C语言 const, static, static const 的区别
2015-10-25 19:55
369 查看
[b]基本定义:[/b]
const 就是只读的意思,只在声明中使用;
static 一般有2个作用,规定作用域和存储方式.
对于局部变量, static规定其为静态存储方式, 每次调用的初始值为上一次调用的值,调用结束后存储空间不释放;
对于全局变量, 如果以文件划分作用域的话,此变量只在当前文件可见; 对于static函数也是在当前模块内函数可见.
static const 应该就是上面两者的合集.
[b]PS:[/b]
1. 全局
const,只读的全局变量,其值不可修改.
static,规定此全局变量只在当前模块(文件)中可见.
static const,既是只读的,又是只在当前模块中可见的.
2. 文件
文件指针可当作一个变量来看,与上面所说类似.
3. 函数
const,返回只读变量的函数.
static,规定此函数只在当前模块可见.
4. 类
const,一般不修饰类,(在VC6.0中试了一下,修饰类没啥作用)
static,C++中似乎没有静态类这个说法,一般还是拿类当特殊的变量来看.C#中有静态类的详细说明,且用法与普通类大不相同.
const 就是只读的意思,只在声明中使用;
static 一般有2个作用,规定作用域和存储方式.
对于局部变量, static规定其为静态存储方式, 每次调用的初始值为上一次调用的值,调用结束后存储空间不释放;
对于全局变量, 如果以文件划分作用域的话,此变量只在当前文件可见; 对于static函数也是在当前模块内函数可见.
static const 应该就是上面两者的合集.
[b]PS:[/b]
1. 全局
const,只读的全局变量,其值不可修改.
static,规定此全局变量只在当前模块(文件)中可见.
static const,既是只读的,又是只在当前模块中可见的.
2. 文件
文件指针可当作一个变量来看,与上面所说类似.
3. 函数
const,返回只读变量的函数.
static,规定此函数只在当前模块可见.
4. 类
const,一般不修饰类,(在VC6.0中试了一下,修饰类没啥作用)
static,C++中似乎没有静态类这个说法,一般还是拿类当特殊的变量来看.C#中有静态类的详细说明,且用法与普通类大不相同.
相关文章推荐
- Windows下安装Code::Blocks 13.12进行C/C++开发
- C++项目中的extern "C" {}
- C++动态库调用配置
- C++primer笔记(21)
- 深入C++中构造函数、拷贝构造函数、赋值操作符、析构函数的调用过程总结
- C++标准库头文件
- 深入理解C++虚函数表
- 回调函数在C/C++中的使用
- 回调函数在C/C++中的使用
- 为什么设计模式java实现的书比较多,C++却很少.
- [C++] inline function
- 岛屿的个数(LintCode)
- C++调用python
- #Pragma Pack(n)与内存分配
- C/C++各种数据类型转换汇总
- C++基础学习积累
- 判断二维平面上两线段是否相交
- 初学C语言----指针深入了解 :指针与函数
- c++面向对象程序设计
- 初学C语言----指针深入了解 :结构体指针