#include <iostream>
using namespace std;
struct Data{
int v;
Data( int _v)
{
v = _v;
}
void Fun(int _v)
{
v = _v;
}
};
int main()
{
Data data(1);
Data *pdata = new Data(2);
// 宣告成員指標
void (Data::*pmfn)(int) = &Data::Fun;
int Data::*pmd = &Data::v;
// 使用成員函數指標
(data.*pmfn)(3);
(pdata->*pmfn)(4);
// 使用成員資料指標
data.*pmd = 5;
pdata->*pmd = 6;
cout << "data: " << data.v << endl
<< "pdata: " << pdata->v << endl;
return 0;
}
沒有留言:
張貼留言