是否有一个方便的过程可以将下面构造函数中的属性“调用者”的值分配给一行?
public partial class SecurityPrompt : Form {
Form1 Caller { get; set; }
public SecurityPrompt(Form1 _caller) {
Caller = _caller;
InitializeComponent();
}
}
是否有一个方便的过程可以将下面构造函数中的属性“调用者”的值分配给一行?
public partial class SecurityPrompt : Form {
Form1 Caller { get; set; }
public SecurityPrompt(Form1 _caller) {
Caller = _caller;
InitializeComponent();
}
}
有对象初始化语法,但它创建构造函数,然后分配公共属性。如果你想使用它,你必须在这里重构你的构造函数。
使用对象初始化器:
编译器通过首先访问默认实例构造函数,然后处理成员初始化来处理对象初始化器。
如果您确实使用它,则在创建构造函数之前不会设置您的属性。因此,如果您在构造函数中调用期望您的属性存在的函数,则不会。记住这一点。
是否有一个方便的过程可以将下面构造函数中的属性“调用者”的值分配给一行?
不,您当前的语法是在构造函数中分配属性的“标准”方式。没有捷径(如C++ 的初始化列表或类似的)。在 C# 中,它总是在构造函数体中内联完成。