簡體   English   中英

如何訪問 c++ 中的 class 變量

[英]How access class variables in c++

是否可以在 c++ 中訪問其他類中的 class 變量而無需創建 object。 我曾嘗試使用 static,但另一個 class 無法識別我的變量。 我有3節課。 其中兩個應該使用 sae 變量。 在第三個 class 中,我正在更改值。 如果您能提供幫助將不勝感激。 也許你有一個例子。

class Myclass
{

    public:
         static int i;
};

int Myclass::i = 10;


class YourClass
{

    public:
        void doSomething()
        {
             Myclass::i = 10;  //This is how you access static member variables
        }

};

int main()
{
    YourClass obj;
    obj.doSomething();
    return 0;
}

static是正確的關鍵字:

class A {
public:
  static int i; // <-- this is a class variable
};

class B {
public:
  void f() { A::i = 3; } // <-- this is how you access class variables
};

我能想到的唯一潛在問題是

  1. 您將 class 變量設置為protectedprivate ,從而使其無法從其他代碼訪問。
  2. 您忘記指定 class 變量的完整 scope(在本例中為A:: :)。

我認為Singleton 模式會有所幫助,但我不是它的忠實粉絲。 更好的設計是讓一個 class 擁有 object,並將對該 object 的引用傳遞給其他類。

是的,你可以,兄弟,試試這個

結構車{

        string model;
        string paint;
        int price;


           };


         int main(){

          // creates an object of the class car

            car BMW;

          // assign the values
           bmw.model = "m sports";
            bmw.paint ="red";
            bmw.price = 24000;


              }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM