# 作用域

# 命名空间

namespace namespace_name {
   // 代码声明
}

引用命名空间内的变量。

namespace_name::code;

# 导入命名空间

使得后续代码在引用该命名空间时无需添加前缀。

  • 导入整个命名空间
using namespace namespace_name;
  • 仅导入命名空间部分变量或方法。
using std::cout;

# 嵌套的命名空间

命名空间可以嵌套,可以在一个命名空间中定义另一个命名空间。

namespace namespace_name1 {
	// 代码声明   
	namespace namespace_name2 {
		// 代码声明   
	}
}

可以通过使用 :: 运算符来访问嵌套的命名空间中的成员:

// 访问 namespace_name2 中的成员
using namespace namespace_name1::namespace_name2;
// 访问 namespace_name1 中的成员
using namespace namespace_name1;

# 作用域解析运算符

:: 为作用域解析运算符。

# 用途

# 命名空间的函数或类型

如上

# 类的属性或方法

如同 python 内的 .

class Test {
    Test();
};

Test::Test() 
{
}

# 全局作用域

单独的 :: 放在函数或变量前,表示调用全局的函数或变量。这在局部也存在同名函数或变量时很有用。

::s;	// 全局变量
s;		// 局部变量

# 函数

# 字符串

# isprint()

检查字符是否为可打印字符。是则返回 true,否则返回 false。

int isprint(int c);

# strdup()

分配块,然后复制字符串到块中,返回块地址。

可用 free () 释放内存。

# strtok()

拆分字符串,