哪为前辈给解释一下get访问器?

Shalves 2010-06-28 06:23:11

class Program
{
private static int x;

public static int X
{
get { return x++; }
}

static void Main(string[] args)
{
PlusX(X);
}

public static void PlusX(int value)
{
Console.WriteLine("Value is: {0}", value);
Console.ReadKey();
}
}


运行结果:Value is: 0

为什么呢?我觉得应该是1啊!跟x有没有初始化无关吧,x是几就显示几。
...全文
283 9 打赏 收藏 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Shalves 2010-06-28
  • 打赏
  • 举报
回复
是啊,多谢各位。

还有一个问题,我在设置断点调试的时候,鼠标移到X上,也会显示已经+1的结果;这是为何,难道get跟DataReader一样也是顺向流的读取方式?
qsq3 2010-06-28
  • 打赏
  • 举报
回复
x++先取值,再自加正解
兔子-顾问 2010-06-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wuyq11 的回复:]
x++先取值,再自加
只带有 get 访问器的属性称为只读属性。无法对只读属性赋值。
get 访问器都必须在属性体的内部声明。
[/Quote]

+1


class thePlus
{
private int x;
public int X
{
get { return x++; }
}
}

//效果相当于

class thePlus
{
private int x;
public int X
{
get
{
int t = x;
x++;
return t;
}
}
}
lsq667 2010-06-28
  • 打赏
  • 举报
回复
楼主变成, get { return ++x; }
lsq667 2010-06-28
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 apollo_ts 的回复:]
。。。。

变量++,是将操作滞后到下一次访问。不是原子操作。
[/Quote]
先进行赋值,后++
wuyq11 2010-06-28
  • 打赏
  • 举报
回复
x++先取值,再自加
只带有 get 访问器的属性称为只读属性。无法对只读属性赋值。
get 访问器都必须在属性体的内部声明。
老Key 2010-06-28
  • 打赏
  • 举报
回复
这个和get访问器没关系。,你将 public static int X中的
static 去掉,,应该就是1了。。。
APOLLO_TS 2010-06-28
  • 打赏
  • 举报
回复
。。。。

变量++,是将操作滞后到下一次访问。不是原子操作。
Shalves 2010-06-28
  • 打赏
  • 举报
回复
我还换了这种写法,结果也是一样。谁指点指点啊,到底该怎样认识get访问器呢。

class Program
{
static void Main(string[] args)
{
thePlus tp = new thePlus();
PlusX(tp.X);
}

public static void PlusX(int value)
{
Console.WriteLine("Value is: {0}", value);
Console.ReadKey();
}
}

class thePlus
{
private int x;

public int X
{
get { return x++; }
}
}
内容概要:本文介绍了基于模型预测控制(MPC)与凸优化算法相结合的电动车优化调度方法,旨在通过Matlab代码实现对大规模电动车充电行为的智能调度。文章系统阐述了MPC在动态系统控制中的滚动优化机制及其对未来状态的预测能力,结合凸优化在处理多目标、多约束问题中的高效求解优势,构建了一个综合考虑电网负荷均衡、经济运行成本与动力电池寿命保护的调度模型。通过详尽的仿真验证,展示了该方法在有效降低电网峰谷差、提升新能源消纳能力、减少用户充电成本以及延长电池使用寿命等方面的优越性能,并深入分析了算法的实时性、收敛性与鲁棒性。; 适合人群:具备电力系统、自动化、控制理论或运筹学等相关专业背景的研究生、科研人员及工程技术人员,尤其适合熟悉Matlab编程、优化工具箱(如CVX)以及对智能电网与电动汽车互动技术感兴趣的研究者。; 使用场景及目标:①应用于城市充电站、住宅小区等大规模电动车接入场景下的有序充电管理;②为电网公司提供实现削峰填谷、缓解配电网络压力、提高电网运行效率的技术解决方案;③作为研究MPC在能源互联网、需求侧响应等领域应用的优秀教学与科研案例,深化对预测控制与优化理论的理解。; 阅读建议:建议读者在学习过程中务必动手运行并调试所提供的Matlab代码,通过调整预测时域、控制时域、权重系数等关键参数,深入理解MPC的滚动优化机制与凸优化的求解过程,重点关注多目标函数的设计理念与各类物理约束(如功率、电量、时间窗)的数学表达,以便在实际工程项目中灵活应用与拓展模型。

111,128

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧