public class Class1
{
public Class1()
{
prop = new Class2();
}
public Class2 prop { get; set; }
public class Class2
{
public Class2()
{
this.prop2 = "nikola";
}
public string prop2 { get { return prop2; } set { prop2 = EditString(value); } }
public string EditString(string str)
{
str += " plavsic";
return str;
}
}
}
这是我有问题的代码。当我尝试初始化 Class1 类型的对象时,它会引发 StackOverflowException 错误。我究竟做错了什么?
最佳答案
Prop2 设置/返回 Prop2... 它调用 Prop2 来获取/设置 Prop2 的值,它调用 Prop2... 看看这是怎么回事?
这种情况一直发生,直到计算机/运行时用完存储调用堆栈的空间,然后死亡。
关于c# - 我在属性 C# 的 set 函数的嵌套类中收到 StackOverflowException 错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4269755/