C++学习之const常量
2013-06-30 15:50
274 查看
#include<iostream> #include<string> using namespace std; //const int * const w() //{ // static int i; // return &i; //} /* ------------------------------------------------------------ 5,声明一个“成员函数”为const,则等于告诉编译器该成员函数可以为igconst对象所调用。 一个没有被明确声明为const的成员函数被看成是将要修改对象中的数据成员的函数, 而且编译器不允许它为一个const对象所调用。 把const放在函数参数表的后面,能取得想要的结果。 */ class Fred { const int size; public: Fred(int sz) ; void print(); }; Fred::Fred (int sz) :size(sz){} // 1,花括号前 专门给const 初始化 void Fred::print () {cout <<size<<endl;} class Integer { int i; static const int size =100;//2,必须初始化 且是常量成员 在所有对象中 都一样 enum {size2=100}; // 4,使用枚举 也可以同样达到效果~ public: Integer (int ii=0); void print(); int f() const ; }; Integer::Integer (int ii) :i(ii) {} void Integer::print (){cout<<i<<' ';} int Integer::f() const {return i;} class Y { int i; mutable int j;// 7,指定特定的数据成员,可以在一个const对象里被改变 public: Y(); void f() const ; }; Y::Y ():j(0) {i=0;} void Y::f() const { ((Y*)this)->i ++;// 6,this是一个const指针,将其强制转换为一个普通指针 j++; } int main() { Integer i[100];//3,将数组初始化为0的快捷方法 memset() for (int j=0;j<100;j++) i[j].print (); return 0; }
相关文章推荐
- C++学习:const关键字和常量
- 【C学习笔记】【疑问】关于const常量的实现机制在C和C++中的不同
- C++学习之const成员函数(函数声明后加const,或称常量成员函数)用法详解
- 个人学习C++过程中对const的总结:初始化系列之用字面值常量与其他类型的值初始化的区别(一)
- C++学习4:宏定义#define与常量const
- 【菜鸟C++学习笔记】20.常指针&指向常量的指针&指向常量的常指针
- C++学习与实践(一):const引用与string类型
- imooc 学习总结——离港篇:C++之const关键字
- C++学习笔记-const
- C++ 常量类型 const 详解
- C/C++学习笔记7:const运用(2)之const成员函数
- [c++学习] C++ primer 第4版 习题4.20 4.21 常量指针 和 指针常量
- [memory]C++中栈区 堆区 常量区(由一道面试题目而学习)
- c++学习笔记之函数重载与const的关系
- C/C++中的const--常量指针与指针常量
- [C++再学习系列] 类常量
- C++ 学习之函数重载、基于const的重载
- C++ Special:const关键字和常量指针 vs 指针常量
- 学习C++笔记(引用、const、iterator)
- 【转】【c/c++】define宏定义和const常量定义之间的区别