c++类、名称空间(部分笔记小记)
学号:16340030
中山大学数据科学与计算机学院 (http://sdcs.sysu.edu.cn/)
1.名称空间及其作用域
名称空间中实体的作用域是全局的(相对于名称空间是全局的),并不意味着其可见域也是全局的,如果不使用作用域限定符::和using机制,抛开名称空间嵌套和内部屏蔽的情况,实体的可见域是从实体创建到该名称空间结束,而在名称空间外,该实体是不可见的。
在某个名称空间中定义或创建的程序实体,如果要在其他名称空间中或外部函数中访问,必须使用作用域限定符::或使用using声明机制来使实体可见。
2.类
类定义作用域:
* 从类定义结束开始,到从外面包围类定义的块结束(若类定义外无包围块,则结束于文件) 使用类的程序员在类定义作用域下编程
* 类定义作用域为包含类定义的花括号语句块,如果没有花括号语句块,则为从类定义开始的全部代码空间
* 类作用域中,类的成员函数对数据成员和其他成员函数具有无限制的访问权。
* 在不同的类A、B中分别定义int num;不会冲突,因为NUM分属不同的类作用域。