-
内存模型和名称空间
- 存储持续性,作用域和链接性
C++有三种方案来存储数据
- 自动存储持续性:在函数定义中声明的变量,包括函数参数。在函数或代码块开始执行时创建。执行完函数或者代码块,内存自动释放。
- 静态存储持续性:函数定义外定义的变量和使用关键字static定义的变量。他们在程序的整个运行过程中都存在。
- 动态存储持续性:用new分配的内存,要显式使用delte操作符释放或者程序结束,系统程序来释放。
作用域表述变量名称的可见范围。在某一范围内,变量名称不能重复。链接性描述名称如何在不同单元(通常为文件)之间进行共享。链接性为外部,则可多个文件共享。链接性为内部,则只能在一个文件中的函数共享。自动变量无链接性,则不能共享。
自动存储持续性:在默认情况下,函数中声明的函数参数和变量为自动存储持续性。作用域为局部,没有链接性。
静态持续变量有三种链接性:
- 外部链接性:在代码块外面声明它。在其他文件使用时,使用extern关键字声明
- 内部链接性:在代码块外面声明它,但是用static修饰。static将链接性限定为本文件。其他文件用extern声明它时,编译器找不到该变量。
- 没有链接性:在代码块内部声明它,但是用static修饰。
- 布局new操作符
-
对象和类
C++的OOP特性
原文:http://www.cnblogs.com/xyqhello/p/3529054.html