【问题标题】:calling a member function of a class by member function of another class? [duplicate]通过另一个类的成员函数调用一个类的成员函数? [复制]
【发布时间】:2016-01-28 02:58:24
【问题描述】:

我有两个类 A 和 B。我想通过 B 的成员函数调用 A 的成员函数。

class A {
   public:
      void memberofa();
}

乙类:

 class B {
  public:
    void memberofb();
}

现在我需要从 memberofb 内部调用 memberofa。 任何建议和语法都会有所帮助

【问题讨论】:

    标签: c++ member func


    【解决方案1】:

    这样的?

    class A {
       public:
          A() {};
          void memberofa()
          {
            //you cant make object of B here because compiler doesn't see B yet
            //if you do want to make Object of B here, define this function somewhere
            //after definition of B class
            printf("printing from member of A\n");
          };
    };
    
    class B {
       public:
          B() {};
          void memberofb()
          {
            printf("printing from member of B\n");
            A objA;
            objA.memberofa();
          };
    };
    
    int main()
    {
        A a;
        B b;
    
        b.memberofb();
        return 0;
    }
    

    【讨论】:

      【解决方案2】:
      1. B 继承自 A
      2. B 包含 A 对象
      3. A::memberofa 是静态函数
      4. A 是单例类
      5. A 继承于 B,B 有 memberofa,它是虚函数。

      【讨论】:

      • 将此答案扩展为完整(尽管是伪)代码示例确实有助于提高可读性!
      猜你喜欢
      • 1970-01-01
      • 2022-01-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多