c++ const 用法】的更多相关文章

const用法 1,定义全局变量的内存分配问题 #define  Pi_1  3.14       //使用#define宏 const double Pi_2 = 3.14    //使用const,这时候Pi并没有放入内存中 double  a = Pi_2;  //这时候才为Pi分配内存,不过后面再有这样的定义也不会再分配内存 double  b = Pi_1;  //编译时分配内存 double  c = Pi_2;  //不会再分配内存, double  d = Pi_1;  //编译…
一.const作用 二.const用法 1.修饰一般常量   修饰符const可以用在类型说明符前,也可以用在类型说明符后. 例如: ; ; 2.修饰常数组  修饰符const可以用在类型说明符前,也可以用在类型说明符后 例如: ]={, , , , }; ]={, , , , }; 3.修饰常指针  ① const int *A; const修饰指向的对象,A可变,A指向的对象不可变 ② int const *A; const修饰指向的对象,A可变,A指向的对象不可变 ③ int * cons…
原文:话说C语言const用法 const在C语言中算是一个比较新的描述符,我们称之为常量修饰符,意即其所修饰的对象为常量(immutable). 我们来分情况看语法上它该如何被使用. 1.函数体内修饰局部变量.例:void func(){const int a=0;} 首先,我们先把const这个单词忽略不看,那么a是一个int类型的局部自动变量,我们给它赋予初始值0. 然后再看const. const作为一个类型限定词,和int有相同的地位.const int a;int const a;是…
一.static 与单例模式 单例模式也就是简单的一种设计模式,它需要: 保证一个类只有一个实例,并提供一个全局访问点 禁止拷贝  C++ Code  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43   #include <iostream> using namespace std; class Sing…
http://www.cnblogs.com/StudyRush/archive/2010/10/06/1844690.html 面向对象是C++的重要特性. 但是c++在c的基础上新增加的几点优化也是很耀眼的 就const直接可以取代c中的#define 以下几点很重要,学不好后果也也很严重 const 1. 限定符声明变量只能被读   const int i=5;   int j=0;   ...   i=j;  //非法,导致编译错误   j=i;  //合法 2. 必须初始化   con…
1.const char *p,char const *p,char * const p 对于C++而言,没有const * 修饰符,所以,const只可以修饰类型或者变量名.因而const char *p,char const *p是等价的. const char *p = "abc"; 意义为:不可以改变p所指向的内容,即*p不可以改变,*p = "bcd";是错误的. char a,b; char * const p = &a; 意义为:不可以改变p的…
一.const是什么 在 C/C++ 语言中,const关键字是一种修饰符.所谓“修饰符”,就是在编译器进行编译的过程中,给编译器一些“要求”或“提示”,但修饰符本身,并不产生任何实际代码.就 const 修饰符而言,它用来告诉编译器,被修饰的这些东西,具有“只读”的特点.在编译的过程中,一旦我们的代码试图去改变这些东西,编译器就应该给出错误提示. 所以,const修饰符的作用主要是利用编译器帮助我们检查自己代码的正确性.我们使用const在源码中标示出“不应该改变”的地方,然后利用编译器,帮助…
C语言关键字const相信对于不少C语言新手是既陌生又熟悉的,好像经常见,但是却不知道为何用,怎么用?学习至此,总结一下const的用法,使用程序来帮助你理解该关键字,希望能帮到像我一样的新手. 我看了一些参考书,总结了几句话. 首先,如果别人问你,const的作用是什么,非常简单而且标准不出错的回答是:定义为‘只读’! 其次,const的难点无非在于,对于变量和指针而言,到底定义了哪一个为只读,作者记忆的方法是:⒈ 看*号在const的左边还是右边,如果是在右边,那么定义就是一个变量只读,如果…
一.typedef主要功能是定义一个已存在类型的别名,但是和宏并存 宏与typedef区别 1.宏定义只是简单的字符串替换 2.typedef定义的类型是类型的别名,typedef后面是一个整体声明,是不能分割的一个整体,具有一定的封装性,不是简单的字符串替换 看下面的例子: #define PSTR_MACRO char* typedef char* PSTR int main() { PSTR piVar1,piVar2; PSTR_MACRO piVar3,piVar4; int iVar…
本文主要内容来自CSDN论坛: http://bbs.csdn.net/topics/310007610 我做了下面几点补充. 补充: 1. 用const声明全局变量时, 该变量仅在本文件内可见, 类似于加了static修饰. 下面的全局变量声明 const int states = 50; 与 stacic const int states = 50; 效果相同; 这样规定的好处是可以将const变量放在头文件中, 而不会出现重复定义变量的错误, 应该每个包含该文件的 文件都相当于声明一个st…