C++使用来自不同类的公共变量

C++ use of public variables from different classes

本文关键字:变量 同类 C++      更新时间:2023-10-16

我想访问C++中不同类的公共变量。我做这件事有困难。例如,我有

class A{
  public:
  int x;
  int getX();
};

之后,我想在class B中使用xclass Aclass B之间没有继承,它们只是两个独立的类。问题是,在class B中,我没有类型为A的对象,因此我无法调用函数getX。你能告诉我在类B中使用变量x(在A中定义(的方法吗?感谢

我认为您需要将它们定义为静态。

class A {
   public:
     static int x;
}

在B类中,您可以访问它.

A::x;

但是x只有一个实例,它将在类A的所有对象之间共享。

class b
{
public:
    void member function(const a &instance)
    {
        cout<<a.x;
    }
};

通过类b的成员函数访问类a的数据成员