2015-08-25 117 views
-6

我已經聲明瞭一個指向一個類的成員函數的指針。它給錯誤。指向一個類的成員函數的指針

#include<iostream> 

using namespace std; 

class B 
{ 
public: 
    int b; 
    void get() 
    { 
     cin>>b; 
    } 
}; 

int main() 
{ 
    B b1 ; 
    void (B::*ptr)()=&B::get; 
    b1.*ptr(); 
    cout<<b1.b; 
} 

回答

3

指針到構件運營.*->*具有比函數調用的語法的優先級低。您需要做:

(b1.*ptr)();