每个对象只调用一次结构构造函数
本文关键字:一次 结构 构造函数 对象 调用 | 更新日期: 2023-09-27 18:02:32
结构中是否可以有一个构造函数,每个对象只调用一次?例如,我希望代码的行为与此类似:
struct mystruct { /*...*/ }
//later on
mystruct x = 5; //constructor called once, okay
x = 6; //constructor called twice for this object, exception thrown
mystruct y = 6; //different object, this is okay
mystruct z;
z = 7; //this is also okay since the definition didn't call the constructor
这在C#中可能吗?如果没有,有没有办法模仿这种行为?
我试着保留一个this
的静态字典,并测试是否存在新的this
,但没有成功。测试this
时,ObjectIDGenerator
也不会。
否。您所要求的是一个静态构造函数。从本质上讲,它必须是无参数的。哪个结构构造函数不能是。
msdnhttps://msdn.microsoft.com/en-us/library/aa288208(v=vs.71(.aspx