1
Possible Duplicate:
How to call a function using pointer-to-member-function不能使用函數指針
Analyzer.h
class Analyzer
{
public :
void viku();
void Bibek();
void vivek();
void (Analyzer::*point)();
Analyzer(){
}
~Analyzer(){
}
};
Analyzer.cpp
using namespace std
#include"Analyzer.h"
void Analyzer::viku(){
cout<<"Hello viku";
}
void Analyzer::vivek(){
point =&Analyzer::viku;
Bibek();
}
void Analyzer::Bibek(){
point();//Errror
cout<<"Bibek";
}
調用一個函數在編譯過程中它顯示了以下錯誤:
error C2064: term does not evaluate to a function taking 0 arguments.
任何人都可以請告訴我如何避免這種情況?
你應該瞭解指針到成員在你閱讀本書的章節函數,因爲這不是一個正常的函數指針。 -1沒有事先研究。 –
我讀過它,但仍然無法找出這就是爲什麼我在這裏發佈這個。 據我說,我已經做了一切正確 1 - 函數指針和函數的簽名是相同的。和調用慣例。那麼我在哪裏得到這個問題? – Kenta
與您的問題沒有關係,但很重要:避免在頭文件中使用'namespace',更好:不要使用它。它可能會導致命名衝突。 – stefan