gpt4 book ai didi

c# - 关于存储变量 c# 以在其他类中使用的基本问题

转载 作者:太空宇宙 更新时间:2023-11-03 19:34:23 27 4
gpt4 key购买 nike

好的,伙计们

我基本上有一个类,它通过其方法签名之一的参数接收 3 个字符串。

然后我尝试将这 3 个字符串映射到全局变量,作为存储它们的一种方式。

但是,当我在实例化此类后尝试从另一个类调用这些全局变量时,它们显示为空值。

这是通过方法 setDate 和映射获取 3 个字符串的类..

 public class DateLogic
{

public string year1;
public string month1;
public string day1;

public DateLogic()
{


}

public void setDate(string year, string month, string day) {

year1 = year;
month1 = month;
day1 = day;


// getDate();

}

public string getDate() {
return year1 + " " + month1 + " " + day1;
}

}

在此之后我尝试从这里调用这个类

 public static string TimeLine2(this HtmlHelper helper, string myString2)
{


DateLogic g = new DateLogic();

string sday = g.day1;
string smonth = g.month1;
string syr = g.year1;
}

我一直在调试,这些值一直到全局变量,但是当从这里的这个类调用时,它不显示它们,只显示 null。

这是因为我正在创建一个全新的实例,我该如何解决这个问题?

最佳答案

year1month1day1 不是“全局变量”——它们是定义的实例字段对于那种类型。每个 DateLogic 实例都有单独的字段。

可以通过使用static 字段实现您想要的,但这会带来很多麻烦(特别是如果您的代码是线程化的或在网络服务器上运行时,这由 HtmlHelper) 暗示 - 将配置的 DateLogic 实例传递给需要它的代码会更好。

关于c# - 关于存储变量 c# 以在其他类中使用的基本问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2730934/

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