namespace A
{
#include <iostream>
};
int main(){
A::std::cout << "\nSample";
return 0;
}
3
A
回答
8
简短的回答:
号龙答:嗯,不是真的。虽然你可以伪造它。您可以在外面声明并使用命名空间内的语句,像这样使用:
#include <iostream>
namespace A
{
using std::cout;
};
int main(){
A::cout << "\nSample";
system("PAUSE");
return 0;
}
不能本地化库,因为即使它曾在一个访问,也不会在标准命名空间访问。另外,“另一个问题是名称空间内的限定名称将是A :: std :: cout,但该库不包含使用外部名称空间限定的名称。”谢谢Jonathon Leffler。
如果问题是您不想让别人知道您的所有代码都可以做什么,那么您可以让自己的cpp文件包含iostream,并在其中定义名称空间。然后你只需将它包含在main(或其他)中,让程序员知道他能做什么,不能做什么。
5
你可以写:
#include <vector> // for additional sample
#include <iostream>
namespace A
{
namespace std = std; // that's ok according to Standard C++ 7.3.2/3
};
// the following code works
int main(){
A::std::cout << "\nSample"; // works fine !!!
A::std::vector<int> ints;
sort(ints.begin(), ints.end()); // works also because of Koenig lookup
std::cout << "\nSample"; // but this one works also
return 0;
}
Thit方法被称为命名空间走样。以下示例显示该功能的真正目的:
namespace Company_with_very_long_name { /* ... */ }
namespace CWVLN = Company_with_very_long_name;
// another sample from real life
namespace fs = boost::filesystem;
void f()
{
fs::create_directory("foobar"); // use alias for long namespace name
}
相关问题
- 1. PHP将文件包含到自定义的“名称空间”中
- 2. 在自定义命名空间下包含一个头部?
- 3. 我应该在名称空间中包含头文件吗?
- 4. 我们可以将Dummy从全局命名空间移动到我自己的命名空间吗?
- 5. PHP命名空间和包含文件
- 6. 我可以在ePub 3.0中使用自定义xml命名空间吗?
- 7. 包含自定义头文件(ANSI C)
- 8. 我可以参考包含在不同命名空间中的脚本吗?
- 9. 我可以将自定义元数据添加到文件吗?
- 10. 我可以命名一个以数字开头的C#名称空间吗?
- 11. 两个头文件可以在C++中包含命名为indentically的类吗?
- 12. 将XML字符串解析为包含自定义命名空间的对象
- 13. 将自己的自定义命名空间添加到我的命名空间在VB.Net
- 14. jax-ws导入并自定义包到命名空间映射
- 15. 检测XML文件是否包含特定命名空间
- 16. 我必须在svcutil.exe命令中包含xml名称空间吗?
- 17. CSS伪类可以命名空间吗?
- 18. 绑定到自定义jquery事件的所有命名空间
- 19. 我可以添加一个自定义头文件到simplexml_load_file
- 20. KDevelop说包含文件未找到:: iostream
- 21. 命名空间'x'已包含'FixupCollection'的定义
- 22. SignalR 2.0命名空间''已经包含'启动'的定义
- 23. 命名空间`XDrawing.TestLab.Tester'已经包含`TesterBase'的定义
- 24. “命名空间'控制台'已经包含'Circle'的定义”
- 25. “命名空间'global ::'已经包含”各种项目的定义
- 26. 命名空间语句是否可以“包含”在PHP中?
- 27. 将自定义命名空间添加到web.config?
- 28. 命名空间与头文件
- 29. 使用命名空间和头文件
- 30. C++头文件中的命名空间
没有编译器吗? – 2009-07-30 02:20:53
你为什么想这样做? – AraK 2009-07-30 02:24:03