奇特的实例化方式
来源:3-6 【操作】构造方法与方法重载

慕莱坞0998854
2022-12-14
老师您好,在课程中有这么一段代码:
// 这是什么写法?和lambda表达式有关系吗?
Point c = new Point
{
x = 15,
y = 10
};
这是个什么写法呢?我习惯于Point c = new Point(15,10)
的写法,看到上面这种写法有点好奇,同时,使用上面这种写法话,Point这个类必须有一个无需任何参数的构造函数,如下图:
写回答
1回答
-
阿莱克斯刘
2022-12-21
其实,这就是c#新标准(其实也不是很新...)的语法糖,详情请参考msdn官方文档,如何使用对象初始值设定项初始化对象 - C# 编程指南 | Microsoft Learn,实际上在最底层还是通过调用构造方法来创建新对象的。如果你习惯于Point c = new Point(15,10)这种写法就按照你的喜好来写吧,没有硬性规定。
00
相似问题
关于委托实例化有点不清楚
回答 1
static
回答 1