繁体   English   中英

从另一个类中的一个类调用函数

[英]Calling a function from one class in another class

如果我有这两组.cpp.h文件,我想在a.cpp中放置一个add()函数,该函数添加十个整数并返回总和。 然后我有b类将返回平均值,但我想使用我从a类中得到的十个整数的总和。 如何在函数average()调用函数add() average()以便它可以返回总和? 我不知道这是否能很好地解决我的问题,我只是制作了这个例子来尝试说明它。

class a { 
  private: 
    int a[10];  
  public: 
    a( ); 
    int add( int); 
}; 

class b {
  private:  
    int d; 
  public: 
    int average(int ); 
}  

您可以在类的对象上调用成员函数,而不是在类本身上。 创建一个对象几乎就像创建一个变量,例如a my_a; . 然后你可以使用my_a对象的add成员函数作为my_a.add(42)

如果您不需要对象(但由于某种原因确实需要类),请使用静态成员函数和变量,如下所示。

class MyClass {
private:
  static int variable;
public:
  static int accessor() { return variable; }
};

在这种情况下,您可以在不创建实例的情况下调用静态成员函数作为MyClass::accessor()

class A {
   public:
      static int add(int);
};

class B {
   public:
      void average(int val){ 
          A::add(val);
          // Some logic 
      }
};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM