[英]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.