test.calculate에서 함수 포인터 할당 (및 나머지는 어떻게 작동합니까?)을 얻으려면 어떻게해야합니까?동일한 개체의 멤버 함수에 C++ 함수 포인터 할당
#include <iostream>
class test {
int a;
int b;
int add(){
return a + b;
}
int multiply(){
return a*b;
}
public:
int calculate (char operatr, int operand1, int operand2){
int (*opPtr)() = NULL;
a = operand1;
b = operand2;
if (operatr == '+')
opPtr = this.*add;
if (operatr == '*')
opPtr = this.*multiply;
return opPtr();
}
};
int main(){
test t;
std::cout << t.calculate ('+', 2, 3);
}
감사합니다. 방금 날 구 했어요. – toochin
@PeterMortensen : 그 남자 *가되지 마십시오. 아무도 그 사람을 좋아하지 않아. –