名字
- 在C++中,有各种各样的名字,变量名和函数名(可调用对象名)是最重要的两个
- 命名空间:形如
namespace XX{}
的作用域.- 我们的代码默认都位于全局空间内,该空间直接通过
::
访问 - 可以定义匿名的namespace,其效果和inline命名空间类似,匿名的namespace是文件私有的,在文件内部共享,在文件之间独立.在C++中,该特性设计用于替代C风格的全局
static
型变量.
- 我们的代码默认都位于全局空间内,该空间直接通过
- 作用域:用{}分割的各种区域都是作用域,常见的如class,namespace,函数体,代码块等.作用域是可以嵌套的.
- 嵌套的命名空间需要注意名字隐藏的问题,例如,对于
namespace A{#include <vector>}
- 相当于在
::A
内定义了一个
- 相当于在