繁体   English   中英

有没有办法在C#的多个类中使用变量?

[英]Is there a way to use a variable in multiple classes in C#?

如果我在一个类文件中定义一个变量,是否可以在另一个类中访问相同的变量?

class Class1
{
    static const int myInteger = 256;
}

class Class2
{
    private void myMethod()
    {
        int i = Class1.myInteger;
        //i is now 256.
    }
}

您可以在第一个类(Class1)的最高级范围内将变量声明为static。 有关static成员的更多信息,请参见MSDN文章:

http://msdn.microsoft.com/zh-CN/library/79b3xss3(v=vs.80).aspx

是的,如果您引用的是第一类的对象。 或者,如果该变量是第一类的公共静态成员,则在这种情况下,您不需要对象引用。

是的,通过属性提供对它的访问。

http://msdn.microsoft.com/zh-CN/library/x9fsa0sw%28v=VS.71%29.aspx

如果要通过其他类访问变量,则应将其公开为公共属性或字段。 但是这些类需要一个关系。

public class C1
{
  public int x = 1;
}

public class C2
{
  private C1 otherClass;

  // constructor
  public C2(C1 other)
  {
    this.otherClass = other;
  }

  public void accessOtherClass()
  {
    Console.WriteLine(this.otherClass.x);
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM