谁能给我解析下这奇葩语法? 反正我怎么编译都是错。这究竟是什么写法?是不是缺了啥? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public overide PasswordConfigValue DefaultValue {get;} PasswordConfigValue passwordConfigValue=new PasswordConfigValue();passwordConfigValue.DefaultPassword="123456";DefaultValue=passwordConfigValue;这么分开来写,明白了吗? 这是 c#6.0的新语法。可以在属性后面直接赋值。vs2015及以上可以 已经override了 就不能再进行赋值了,而且这还是个只读的属性。get 方法里应该返回 基类中的对象。 那就不清楚了,因为我也没用c#6.0的语法。可能想duanzi_peng说的 override后,不能在属性赋值了? 现在的团队用TFS,我这里只有VS2013能用上TFS,但2013没有C6.0及以上。有VS2017,但VS2017又木有TFS。陨石坑。 不是 new xxx(){yy="123"};吗? 这是新语法吗? 怎么GET 还能 赋值? 这怎么就是奇葩语法了呢……我代码里到处都是这样的写法……上面也说了 C# 6.0开始才支持的语法属性可以赋初始值,后面那个new XXX更不用说了吧,这个是3.5开始支持的语法糖,初始化并按属性赋值…… 写成这样就不奇怪了吧?private PasswordConfigValue defaultValue = new PasswordConfigValue() { DefaultPassword="123456" };public overide PasswordConfigValue DefaultValue {get { return defaultValue; } } C# 6.0的语法,不算“奇葩”,因为vb 2013就支持属性默认值了。 c# 这是要改成C++节奏。奇葩语法一堆。vs2008之后再无更新。后面的更新可以无视。 求一Enumerable扩展方法的写法 简单的MsSql问题 WPF中RichTextBox在DATAGRID中如何绑定数据 求Socket TCP 接收信息方法 请问哪位用过Bluetooth Framework VCL里面的bftowdthunk.dll这个组件 如何将图片进行黑白处理 datalist 是如何邦定的 splitter的问题 vs2010跟2005区别 winform中的DataGridView如何加上CheckBox选择列? 如何在一个datagridview中如何显示acesse主表和从表 关于微信小程序的加密数据解密算法怎么写成c#版本
PasswordConfigValue passwordConfigValue=new PasswordConfigValue();
passwordConfigValue.DefaultPassword="123456";
DefaultValue=passwordConfigValue;这么分开来写,明白了吗?
可以在属性后面直接赋值。
vs2015及以上可以
可能想duanzi_peng说的 override后,不能在属性赋值了?
陨石坑。
我代码里到处都是这样的写法……
上面也说了 C# 6.0开始才支持的语法
属性可以赋初始值,后面那个new XXX更不用说了吧,这个是3.5开始支持的语法糖,初始化并按属性赋值……
private PasswordConfigValue defaultValue = new PasswordConfigValue() { DefaultPassword="123456" };
public overide PasswordConfigValue DefaultValue {get { return defaultValue; } }