比如,我有两个类,Class A和Class B
假如这个变量的 int x
Class B要用到Class A里面的变量,该怎么办?
假如x是全局变量的话,我知道直接在Class B里面加一句extern x就可以了
但是假如x是Class A的成员变量(私有和公有分别)该怎么做呢?
初学C,谢谢

解决方案 »

  1.   

    ClassB加一个ClassA的成员变量就成了
      

  2.   

    通过class A的public方法来得到x
      

  3.   

    把ClassA设为ClassB的友元类。     class B
          {
                 …
          public:
                 friend class A;
                 …
          };
     
      

  4.   

    x是公有的话,可以直接弄一个B的对象,就可以直接访问x,
    x是私有的活,不可以那样直接访问,可以在A中加一个get方法(公有),再通过方法访问
      

  5.   

    定义一个B类的变量不就好了.
    void A::Fun(B &b)
    {
       int c = b.x;
    }B b1;
    A a1;
    a1.Fun(b1);
      

  6.   

    在Class A和Class B的H文件中预申明Class B和Class A;但不包含头文件.
    然后在Class A和Class B的CPP文件中包括Class B和Class A的头文件.如:A.h文件内容:class B;class A
    {
    }A.cpp
    #include "B.h"
      

  7.   

    在Class A类中将 int x定义为public类型,然后在Class B中声明一个Class A类型变量,如 A m_var;然后通过 m_var.x = 5;将x赋值为5