使用命名空间成员
使用命名空间成员
using
声明
- 引入一个命名空间中的一个成员。
- 会隐藏外层作用域的同名实体。
using
声明的有效范围到其所在的作用域结束为止。
using
指示
- 引入一个命名空间中所有成员。
- 不能出现在类作用域中。
- 可以出现在局部作用域中,但会被视为出现在最近的外层作用域中。
- 会与外层作用域的同名实体冲突,使用同名实体时会出现二义性错误,这与
using
声明的行为截然相反。 - 有效范围也到其所在的作用域结束为止。
使用建议
- 头文件中不应在顶层作用域使用
using
指示或using
声明。 - 最多在函数或命名空间内部使用。
评论