gpt4 book ai didi

c# - 我在属性 setter 中进入无限循环

转载 作者:太空狗 更新时间:2023-10-29 20:49:16 25 4
gpt4 key购买 nike

public int Position
{
get
{
if (Session["Position"] != null)
{
Position = Convert.ToInt32(Session["Position"]);
}
else
{
Position = 5;
}
return Position;
}
set
{
Position = value;
}
}

我的程序调用 get 并进入 if 循环,然后无限地运行到 set 代码中

最佳答案

错误是因为在您的 set {} 中,您递归地调用了同一个 setter。

正确的代码应该是

private int _position;
public int Position
{
get
{
if (Session["Position"] != null)
{
this._position = Convert.ToInt32(Session["Position"]);
}
else
{
this._position = 5;
}
return this._position;
}
set
{
this._position = value;
}
}

关于c# - 我在属性 setter 中进入无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16154873/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com