std代表什么?

  • 本文关键字:std c++ std
  • 更新时间 :
  • 英文 :


我明白,如果没有using namespace std,而你想写一个cout,你需要有一个std::cout

std代表什么?为什么std被广泛使用,例如std::vectorstd::coutstd::cin?

std代表"标准"。

这么多标准的东西放在std名称空间中的原因很简单:在名称空间出现之前,不同的人编写的不同代码通常会使用相同的名称,从而导致冲突。例如,我1994年的饮料分配器程序可能有一个类ofstream,它是一个橙色芬达流。当一个新版本的c++出现并添加了ofstream(一个输出文件流)时,我的程序无法再编译了,或者会崩溃。

好吧,橙色幻想流是愚蠢的,但主要的操作系统确实有称为open,closeindex的C函数。我相信很多人都试过把全局变量命名为open,然后他们的程序崩溃了。

在c++中,所有新的c++标准的东西都在std::里面,所以只要我不在我的程序中调用std,他们就可以在std::里面添加新的东西,这绝对不会导致这个问题。不幸的是,c++从C继承的所有东西都在std::之外,所以你仍然不能创建一个名为open的全局变量(在Linux上),但至少这是一个开始。

相关内容

  • 没有找到相关文章

最新更新