可以停止在代码中使用命名空间吗?
Can one stop using a namespace within one's code?
可能重复:
我如何";取消使用";命名空间?
例如,在声明"使用名称空间mynamespace"之后,是否可以在代码中间停止使用该名称空间?
谢谢你的帮助。
看看关于命名空间的C++文档。
http://www.cplusplus.com/doc/tutorial/namespaces/
您可以声明您正在为特定作用域(如函数)"使用"命名空间。但我不相信你可以任意指定using语句的开始和结束位置,它总是针对它在其中声明的范围的其余部分
我应该注意(如果我错了,请有人纠正我),在C++中,只需使用大括号,你就可以在几乎任何你想要的地方任意声明一个范围。
{
using mynamespace;
/* rest of your code here */
}
但要谨慎使用,因为如果使用频率太高或上下文错误,会使代码更难阅读(这从一开始就违背了"使用"的全部意义,对吧?)。
您无法在代码中停止using namespace
。但是,您可以对代码进行一些巧妙的更改来模拟这种效果。
- 拆分为各种
.cpp
文件并仅将CCD_ 3用于实际需要的文件 - 在同一个文件中,使用
using namespace
设施朝向文件的底部,以便上层代码将不具有CCD_ 5效应 - 封装
using namespace
在另一个命名空间/函数中。看见例如
不,我认为整个.cpp文件都可以使用该名称空间,但如果您想使用其他名称空间中的同名对象,则可以始终使用完全限定名称!
相关文章:
- 如何公开库的枚举,以便我的代码不必键入整个命名空间来使用该枚举?
- 如何在不复制此代码的情况下将多个函数放入多个命名空间?
- 用于更简洁代码的嵌套命名空间
- 代码使用命名空间运行,但不使用 std::cout 运行
- C++错误代码全局命名空间
- 我是否可以在类似于 C# 的 C++ 中创建全局命名空间层次结构,以帮助开发人员使用我们的代码?
- XCode、命名空间、C++和代码可移植性
- 如何让代码存在于两个或多个非嵌套命名空间的范围内
- clang 3.3 可以在 VS 2010 中使用命名空间编译代码
- C++代码说明 - 命名空间
- 无法在 Cython 中带有命名空间的C++代码中返回 C 结构
- 用于在 C++ 中管理特定于平台的代码的内联命名空间技术
- 匿名命名空间-在头文件和代码文件中都有意义
- 可以将代码包装在匿名命名空间中以使用指令吗
- 正在从未命名的命名空间中执行代码
- 我收到void main()和使用命名空间std;之间的冲突;?我正在使用代码块
- 内联命名空间变量有内部链接吗?如果没有,为什么下面的代码有效
- 用于"augments std"的代码的命名空间是什么?
- 为什么这个重载/命名空间/模板相关的C++代码不编译?
- 如何为命名空间和扩展类转换c#到Qt小部件代码(c++)