C# 使用默认构造函数初始化C类型#
可能重复:C# 使用默认构造函数初始化C类型#,c#,C#,可能重复: 请问你这样做有什么好处吗 public class MyClass { List<string> list; public MyClass { list = new List<string>(); } } 公共类MyClass { 名单; 公共MyClass { 列表=新列表(); } } 这样做太过分了 public class MyClass { List<string> list = new List<
请问你这样做有什么好处吗
public class MyClass
{
List<string> list;
public MyClass
{
list = new List<string>();
}
}
公共类MyClass
{
名单;
公共MyClass
{
列表=新列表();
}
}
这样做太过分了
public class MyClass
{
List<string> list = new List<string>();
public MyClass
{
}
}
公共类MyClass
{
列表=新列表();
公共MyClass
{
}
}
我想都一样。因此,构造函数比这些简单的情况更重要在第一个示例中,当列表初始化时,您选择的正是构造函数。如果构造函数中有其他代码,则您负责将初始化定位在正确的位置
另外,如果类有一个基类,那么在初始化列表之前将调用基类构造函数 在第一个示例中,您选择的正是列表初始化的时间。如果构造函数中有其他代码,则您负责将初始化定位在正确的位置
另外,如果类有一个基类,那么在初始化列表之前将调用基类构造函数 首先,所有初始值设定项按从派生到基的顺序运行,然后所有构造函数按从基到派生的顺序运行
阅读Eric Lippert的文章。首先所有初始值设定项按从派生到基的顺序运行,然后所有构造函数按从基到派生的顺序运行 阅读Eric Lippert的文章