Thinking in C++读书笔记--10.4指向对象成员的指针
2006-11-09 00:43
489 查看
如假有一个结构 : struct sample { int a; };
如果有这个结构的对象so与指针sp,可以通过下面的方法选择对象成员:
so.a; sp->a;
如果有一个指针指向了a,那我们该怎样给它赋值呢?
应该是这样的: so.*pm = 47; sp->*pm = 47;
指向一个对象的指针的语法变成了->*,而对象则为.*
那该怎么定义呢?
int sample::*pm;
或者:
int sample::*pm = &sample::a;
有关成员函数的指针,定义如下面:
int (*fp) (float);(*fp)用来迫使编译器正确判断定义.
例如,有这样的一个结构: struct sample { int f(float) };
定义一个指向f的指针应该是这样的:
int (sample::*fp) (float) = &sample::f;(&是可选的,可以用不带参数表的函数标识符来表示地址)
如果有这个结构的对象so与指针sp,可以通过下面的方法选择对象成员:
so.a; sp->a;
如果有一个指针指向了a,那我们该怎样给它赋值呢?
应该是这样的: so.*pm = 47; sp->*pm = 47;
指向一个对象的指针的语法变成了->*,而对象则为.*
那该怎么定义呢?
int sample::*pm;
或者:
int sample::*pm = &sample::a;
有关成员函数的指针,定义如下面:
int (*fp) (float);(*fp)用来迫使编译器正确判断定义.
例如,有这样的一个结构: struct sample { int f(float) };
定义一个指向f的指针应该是这样的:
int (sample::*fp) (float) = &sample::f;(&是可选的,可以用不带参数表的函数标识符来表示地址)
相关文章推荐
- c++指向对象成员函数的指针
- C++对象指针—指向对象成员的指针
- 类和对象深入讨论——指向类的成员的指针
- 7.22通过指向对象的指针访问对象中的成员
- 指向对象成员的指针
- 对象数组和指向对象的指针 指向类成员的指针
- 指向对象指向对象成员的指针
- 当指针并没有指向实际的对象时,能否调用对象的成员函数
- C++:指向对象成员函数的指针
- 指向对象的指针访问成员函数
- 用对象和用指向基类的指针访问成员函数
- 常对象+常对象成员+指向对象的常指针+指向常对象的指针变量+对象的常引用
- this指针指向当前调用对象,只是用于类的非静态成员函数。静态函数和全局函数 无当前对象,无this指针。
- C++之指向对象成员函数的指针
- 第五周 阅读程序 在 main 函数中,可设置指向对象public 成员、对象函数还有对象的指针
- 指向对象成员的指针
- C++中关于指向对象成员函数打指针例子
- 指向对象成员变量的指针和指向成员函数的指针
- VC++之对象含指针成员指向堆空间并调用复制构造函数问题—参考范磊VC++
- 对象指针—指向对象成员的指针