首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

类成员对象的指针如何typedef

2013-05-02 
类成员对象的指针怎么typedef我记的类成员对象的指针是静态数据,应该是可以向成员函数指针一样typedef的但

类成员对象的指针怎么typedef
我记的类成员对象的指针是静态数据,
应该是可以向成员函数指针一样typedef的
但是该怎么定义呢?
差不多是这个意思
struct A
{
int time;
};

typedef &A::time a_point;
[解决办法]
类的成员变量位置是在类的 this 指针偏移一定的位置.  this 都不是静态的, 成员变量怎么会是静态的.
而且 typedef 是定义类型的, 而不是定义数据, 管你静态不静态, 都不该使用 typedef

[解决办法]
用指针指向类成员可以做到,typedef怎么定义这个指针就不会了。

#include <iostream>

struct A
{
int time;
};


int main()
{
    using namespace std;

A a;
a.time = 10;
cout << "a.time = " << a.time << endl;
int A::*a_point = &A::time;
cout << "a.*a_point = " << a.*a_point << endl;
a.*a_point = 20;
cout << "a.time = " << a.time << endl;
return 0;
}


执行结果:
a.time = 10
a.*a_point = 10
a.time = 20

热点排行