c++ - 声明 "namespace std {}"的目的是什么?

标签 c++

在某段代码中,我看到了这个声明,但没有理解其确切含义...

namespace std {};     // why?
using namespace std;

int main(){

...

}

最佳答案

这是命名空间的前向声明。在声明 namespace 之前,您不得“使用” namespace ,因此如果您没有任何包含文件预先引入“std”的任何部分,则必须进行声明。

它真的有用或必要吗……这是值得怀疑的。如果您包含任何引入 std 任何部分的内容,则不需要前向声明。如果不是,则不需要 using namespace std。所以这可能是一些样板代码 - 有人被教导“总是使用命名空间 std 编写”,并且即使没有任何意义也会编写它。

关于c++ - 声明 "namespace std {}"的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38539778/

相关文章:

android - V8 独立应用程序仅在发布签名的 APK 时死于 SIGILL

c++ - gcc-4.0.0-8 和 gcc-4.3.2 的区别

c++ - 让可执行文件在多个 Linux 操作系统的 : 上运行

c++ - 跟踪第 3 方库中的段错误:cv::ImageCodecInitializer 析构函数崩溃

c++ - 在 C++ DLL 中使用 C 风格导出 API 之间公共(public)类的方法

c++ - 在 printf 中使用可以扩展为整数或无值的 MACROS

c++ - C++ 中的 LPWSTR、wchar_t* 和无符号短指针

c++ - gcc 是否以代数方式优化 c++ 代码,如果是,优化到什么程度?

c++ - android NDK 提示 std::nearbyint 不是 std 的成员

c++ - 在Linux中,如何获取在valgrind下运行的程序的回溯