C ++,从成员函数调用非成员函数

时间:2013-11-19 14:08:16

标签: c++

以某种方式可以从成员函数调用非成员函数吗?

这样的事情:

class A {
    int a;
public:
    bool (int b) { 
       smt; 
       lala = define_smt(smt);
       if (lala < 5) {
           return true;
       }
       else {return false}
    }
}

int define_smt(smt){ ...} 

提前举手

2 个答案:

答案 0 :(得分:4)

该功能必须在通话时知道。这意味着您必须在使用它之前声明它。这里基本上有两个选择:将整个函数放在类之前,或者在类之前使用函数原型。所以:

int define_smt(smt) { ... }

class A {
    // ...
}

或:

int define_smt(smt);

class A {
    // ...
}

int define_smt(smt) { ... }

答案 1 :(得分:1)

当然有可能。只要您的功能在当前上下文中可用。即,在调用之前,原型或定义应该可用。