C++ Primer 5th笔记(chap 18 大型程序工具) using指示
Posted thefist11
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ Primer 5th笔记(chap 18 大型程序工具) using指示相关的知识,希望对你有一定的参考价值。
1. 定义
using指示以关键字using开始,后面是关键字namespace以及命名空间的名字
1.1 vs using声明
无法控制那些名字是可见的,因为所有名字都是可见的
- using 声明, 我们只是简单地令名字在局部作用域内有效。
- using指示, 整个命名空间的所有内容变得有效。
通常情况下, 命名空间中会含有一些不能出现在局部作用域中的定义, 因此, using 指示一般被看作是出现在最近的外层作用域中
1.2 作用域
using指示可以出现在全局作用域、局部作用域和命名空间作用域中,但是不能出现在类的作用域中
// namespace A and function f are defined at global scope
namespace A {
int i, j;
}
void f()
{
using namespace A; // injects names from A into the global scope
cout << i * j << endl; // uses i and j from namespace A
//...
}
1.3
using 指示可能会造成二义性。
using 指示也并非一无是处, 例如在命名空间本身的实现文件中就可以使用using 指示
以上是关于C++ Primer 5th笔记(chap 18 大型程序工具) using指示的主要内容,如果未能解决你的问题,请参考以下文章
C++ Primer 5th笔记(chap 18 大型程序工具)noexcept
C++ Primer 5th笔记(chap 18 大型程序工具)异常处理
C++ Primer 5th笔记(chap 18 大型程序工具)捕获异常
C++ Primer 5th笔记(chap 18 大型程序工具)命名空间特性