21xrx.com
2025-04-01 19:33:09 Tuesday
文章检索 我的文章 写文章
如何在C++中调用其他类的成员变量
2023-06-29 09:20:15 深夜i     21     0
C++ 成员变量 调用 其他类

在C++中调用其他类的成员变量是很常见的需求。这可以通过使用类的访问级别来实现。在C++中,类成员一般分为公有成员、私有成员和受保护的成员。公有成员可以被任何函数访问,私有成员只能被类成员访问,受保护的成员只能在类内以及子类中访问。

为了在C++中调用其他类的成员变量,首先需要了解这些成员变量的访问级别。如果成员变量是公有的,可以直接使用点操作符"."来访问。例如:

class A
public:
  int x;
;
class B
public:
  A a;
;
int main()
  B b;
  b.a.x = 10;
  return 0;

在上面的例子中,我们定义了两个类A和B。类A中有一个公有成员变量x,类B中有一个公有成员变量a,类型为A。在main函数中,我们创建了类B的对象b,并使用点操作符"."来访问成员变量a中的x,并将其赋值为10。

如果成员变量是私有的或受保护的,那么我们无法直接访问,必须使用成员函数来操作它们。例如:

class A {
private:
  int x;
public:
  void setX(int v)
    x = v;
  
  int getX()
    return x;
  
};
class B {
private:
  A a;
public:
  void setX(int v) {
    a.setX(v);
  }
  int getX() {
    return a.getX();
  }
};
int main() {
  B b;
  b.setX(10);
  int x = b.getX();
  return 0;
}

在上面的例子中,类A中的成员变量x是私有的,我们定义了两个成员函数setX和getX来完成对它的赋值和获取操作。类B中的成员变量a是受保护的,我们同样定义了两个成员函数setX和getX来操作它的成员变量x。在main函数中,我们创建了类B的对象b,使用setX函数将成员变量x赋值为10,并使用getX函数获取它的值。

总的来说,在C++中调用其他类的成员变量需要根据它们的访问级别来选择合适的访问方式。如果成员变量是公有的,可以直接使用点操作符"."来访问;如果成员变量是私有的或受保护的,则必须使用成员函数来访问它们。掌握这些基本的访问方式可以让我们更加灵活地操作类的成员变量。

  
  

评论区

请求出错了