理解性记忆const修饰普通变量和指针的新思路
2008-12-27 14:39
197 查看
看了"C++中const用法总结 ", 谈点新思路. 关于理解下面语句中的const:
A. const char *pContent;
B. char * const pContent;
C. char const *pContent;
D. const char* const pContent;
标准的助记方法是:
沿着*号划一条线,
如果const位于*的左侧,则const就是用来修饰指针所指向的变量,即指针指向为常量;
如果const位于*的右侧,const就是修饰指针本身,即指针本身是常量。
当然,这也是c++之父的著作<<C++程序设计语言>>里的方法.
我的想法是: const用来修饰的是其右侧第一个变量或类型的常量属性.
对于A, const修饰的是char, char是类型, 所对应的变量是 *pContent; 所以A中const表示指向的内容不变
对于B, const修饰的是pContent, 即表示char*型的指针pContent不变.
对于C, const修饰的是*pContent,即同A.
对于D, 第一个const修饰的是char, 同A, 第二个const修饰的是pContent,同B.
A. const char *pContent;
B. char * const pContent;
C. char const *pContent;
D. const char* const pContent;
标准的助记方法是:
沿着*号划一条线,
如果const位于*的左侧,则const就是用来修饰指针所指向的变量,即指针指向为常量;
如果const位于*的右侧,const就是修饰指针本身,即指针本身是常量。
当然,这也是c++之父的著作<<C++程序设计语言>>里的方法.
我的想法是: const用来修饰的是其右侧第一个变量或类型的常量属性.
对于A, const修饰的是char, char是类型, 所对应的变量是 *pContent; 所以A中const表示指向的内容不变
对于B, const修饰的是pContent, 即表示char*型的指针pContent不变.
对于C, const修饰的是*pContent,即同A.
对于D, 第一个const修饰的是char, 同A, 第二个const修饰的是pContent,同B.
相关文章推荐
- 关于const 修饰变量、引用、指针的说明
- 用const修饰"记忆变量"。。。
- c++中 const修饰指针的理解与记忆法
- const*与*const,const修饰指针的一种简单记忆方法
- C++中有关const修饰指针和变量
- [C++] C++中const修饰指针,变量, 函数参数和函数返回值的用法总结
- 用const修饰"记忆变量"。。。
- WM_COPYATA 与 PostMessage/SendMessage;const 的变量通过指针修改后?;指针与数组名
- 键盘输入3*3的整数矩阵,求两条对角线中最小的元素和最大的元素,使用普通指针变量实现。
- c++ 普通全局变量与指针类型的对象变量 应用区别
- C++语言之指针与指针、指针与普通变量的关系
- const修饰词在指针中作用
- 关于指针作为函数参数传递的理解,对比普通变量作为函数参数的需注意点,其实就是行参和实参的问题。
- 关于const修饰指针
- const关键字修饰指针速记的好方法
- 4000 黑马程序员—C学习笔记—static和const修饰的全局与局部变量
- C++点滴——const/volatile不能用来修饰没有this指针的成员函数
- c++ const修饰指针
- 【c/c++笔试题一】const变量通过指针修改问题
- C++中static、const、static const修饰变量作用详解