我有一個函數指針作爲成員的類。在某些情況下,我希望指針指向一個函數對象,這是不可能的?函數對象的成員函數指針
class C {
public:
C();
private:
void (*p)();
struct Functor {
void operator()() {
}
};
};
C::C() : p(Functor()) {
}
int main(int argc, char **argv) {
C c;
}
我得到:
t.cpp: In constructor 'C::C()':
Line 12: error: cannot convert 'C::Functor' to 'void (*)()' in initialization
根據定義,沒有。爲什麼你會期望能夠做到這一點? – curiousguy 2011-12-24 04:05:07