【发布时间】:2021-08-31 14:04:21
【问题描述】:
MyClass.cs:
namespace ConsoleApp
{
public partial class MyClass
{
public string Name { get; set; }
public MyClass()
{
Name = "base";
}
}
}
MyClass2.cs:
namespace ConsoleApp
{
public partial class MyClass
{
public MyClass(string nothing) : base()
{
}
}
}
程序.cs:
namespace ConsoleApp
{
class Program
{
static void Main(string[] args)
{
MyClass myClass = new("str");
Console.WriteLine(myClass.Name);
}
}
}
当我运行这个程序时,基本构造函数没有设置 myClass.Name。我在无参数构造函数中放置了一个断点,它不是从带参数的构造函数中调用的。知道这是否允许吗?如果是这样,我错过了什么?
谢谢!
【问题讨论】:
-
您似乎将继承与部分类混合在一起。
-
` : base()` 这是调用
Object构造函数(基类)。 -
你应该使用
: this(),而不是: base()。 -
我希望这篇文章可以继续使用......虽然它已经关闭了。有时,不是你知道或不知道什么,而是你认为你知道的实际上不是什么。只有当您提出“正确”的问题时,Google 才能提供帮助。有点像拼写检查器,它不会告诉你你的语义错误。并非每个人都可以访问支持小组来帮助解决此类主题。这就是stackoverflow如此有价值的原因。感谢所有帮助解决这个问题的人。
标签: c# constructor partial-classes