C#中一个很简单的变量赋值问题
Program是一个类名
Program.temperature是这个类中声明的静态变量
temperature是另一个类 AAA 中的变量
我要在这个AAA实例出的对象的方法里实现累加
这个写法就不对,加不了。
Program.temperature = temperature + 1
这个就对
Program.temperature = ++temperature
————————————————
或者说
用这一句:
Program.temperature = temperature + 1
就不对
而用这二句:
temperature = temperature + 1
Program.temperature = temperature
就正确。
————————————————————--
这是为什么呀,原因出在哪里?
这里我烤过来代码源文件的一部分:
Program.temperature是这个类中声明的静态变量
temperature是另一个类 AAA 中的变量
我要在这个AAA实例出的对象的方法里实现累加
这个写法就不对,加不了。
Program.temperature = temperature + 1
这个就对
Program.temperature = ++temperature
————————————————
或者说
用这一句:
Program.temperature = temperature + 1
就不对
而用这二句:
temperature = temperature + 1
Program.temperature = temperature
就正确。
————————————————————--
这是为什么呀,原因出在哪里?
这里我烤过来代码源文件的一部分:
namespace mydelegate
{
class Program
{
public static int temperature = 38;
public static int custemp = 25;
public static bool isStart = false;
static void Main(string[] args)
{
AirConditioner airconditioner = new AirConditioner();
Displayer displayer = new Displayer();
Alarmer alarmer = new Alarmer();
Uptemper uptemper = new Uptemper();
Timer mytimer = new Timer(2000);
uptemper.OverLoadTemperatureEvent += airconditioner.Start;
uptemper.OverLoadTemperatureEvent += displayer.Display;
uptemper.OverLoadTemperatureEvent += alarmer.Alarm;
mytimer.Elapsed += new ElapsedEventHandler(uptemper.Uptemp);
mytimer.Start();
Console.ReadKey();
}
}
//定义模拟升温类
public class Uptemper
{
public int temperature;
public int custemp;
......
......若干代码
......
public void Uptemp(object sender,ElapsedEventArgs e)
{
custemp = Program.custemp;
temperature = Program.temperature;
//用这二句做累加,成功!
//temperature = temperature + 1;
//Program.temperature = temperature ;
//用这句做累加,也成功
//Program.temperature = ++ temperature
//用这句做累加,就失败,Program.temperature里的值一直都加不上去。
Program.temperature = temperature + 1; //自然升温
//Console.WriteLine("随机数为{0} 加后结果{1}", x, Program.temperature);
OverLoadTemperatureEvent(temperature, custemp);
......
}
...全文
相关推荐
C#变量取值的问题
C#变量取值的问题
c# 变量反射使用赋值
当初为了做项目的实时报警,想到使用反射功能,查了很多资料,最后在论坛发帖一位大神教我的,有这方面需求的可以看看,大神可以路过。
dotnet C# 如果在构造函数抛出异常 是否可以拿到对象赋值的变量.rar
开发案列优质学习资料资源工具与案列应用场景开发文档教程资料
C#面试题 C#面试考官经常会问的问题
C#面试考官经常会问的问题,对学习的c#的朋友以后哦找工作有很大的帮助
c# WinForm 窗体之间传值的几种方式(小结)
主要介绍了WinForm 窗体之间传值的几种方式(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧


