gpt4 book ai didi

c# - 访问类的静态变量后,执行流程是怎样的?

转载 作者:太空宇宙 更新时间:2023-11-03 15:32:31 28 4
gpt4 key购买 nike

我的结构是

public static class BuildVersion
{
public static Version v1// a Version variable
{
get
{
isVersionV1Updated=true;
return getVersion("v1");//this is a helper method to get versions
}
}
public static Version v2
{
get {
isVersionV1Updated=false;
return getVersion("v2");
}
}
public static bool isVersionV1Updated = false;
public static Version getVersion(string versionString)
{
Console.WriteLine(versionString+" updated");
//do something
return requiredVersion;
}
}

现在,当我设置 BuildVersion.isVersionUpdated=true 时会发生什么?

  1. 我的意思是,流程是什么,变量 v1 和 v2 会得到人口稠密?
  2. 如果是,输出会打印“v1 updated”和“v2已更新”作为输出出现?
  3. 如果我将“BuildVersion”类设置为非静态类,会有什么不同吗

附言请原谅这个问题太天真了,我很好奇当你执行“BuildVersion.someVariable”时控制流向何处

最佳答案

首先,对于非静态类,您可以在输出窗口中获取数据,因为您可能在创建类实例时获取了 v1 和 v2。
回答你的问题:
1. No. 当你设置 isVersionUpdated=true 时,v1 & v2 仍然保持不变。
2. 目前不会,但如果在您的代码中,当您尝试获取 v1 或 v2 时,它会。
3. 普通类可以有静态和非静态方法/ Prop ,适合自己(如果你以后觉得你可能需要非静态 Prop 和方法)。

关于c# - 访问类的静态变量后,执行流程是怎样的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33276710/

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