# 作用域
# 命名空间
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()
拆分字符串,