类成员对象的指针怎么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