Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 我们为什么要使用;使用名称空间std"?我们可以使用#include<;conio.h>;相反_C++_Std - Fatal编程技术网

C++ 我们为什么要使用;使用名称空间std"?我们可以使用#include<;conio.h>;相反

C++ 我们为什么要使用;使用名称空间std"?我们可以使用#include<;conio.h>;相反,c++,std,C++,Std,我真的很困惑我们如何在标题中使用std库。何时使用哪个库。“使用名称空间标准”与conio.h是否不同。。??或者他们是同一件事。“iostream”和“iostream.h”之间的区别是什么。这些东西让我感到困惑…… 它只是允许你使用使用命名空间 >代码> STD< /Cord>,这是大多数标准C++头库的命名空间。如果您使用它,您就不必在访问时添加std::前缀,例如,std::cout或std::cin,现在分别是cout和cin 例如: // without using namespac

我真的很困惑我们如何在标题中使用std库。何时使用哪个库。“使用名称空间标准”与conio.h是否不同。。??或者他们是同一件事。“iostream”和“iostream.h”之间的区别是什么。这些东西让我感到困惑……

它只是允许你使用<强>使用<强>命名空间<强> >代码> STD< /Cord>,这是大多数标准C++头库的命名空间。如果您使用它,您就不必在访问时添加
std::
前缀,例如,
std::cout
std::cin
,现在分别是
cout
cin

例如:

// without using namespace std
#include <iostream>

int main() {
    cout << "Hello World"; // error
    std::cout << "Hello World"; // outputs Hello World
    return 0;
}
<代码> CONIO .H/COD>是一个C++库,包含了诸如<代码> GETCHE()/<代码>和<代码> PUCHH()/<代码>。代码> IoSturn.H./Cux>是在引入命名空间之前使用的<强>标准前/<强> C++库。code>iostream是一个标准库,其中包含
cin
cout
等对象

>>代码> STD<代码>是C++标准库的命名空间,例如,代码>字符串实际上属于这个命名空间,所以<代码>字符串的全称是<代码> STD::String code>使用名称空间std告诉编译器我们想要访问这个名称空间中的资源-给我们
全局
,或者直接访问它所持有的
字符串
。更多细节请看皮特的评论

<> L> >P> C++标准库包含了许多不同的包,它们可以由标题包含,其中一个是“代码> <代码>,更多代码<代码> STD< /Cord>头可以在这里找到:

  • conio.h
    看起来像一个旧的DOS特定的C头,不再流行了

  • iostream.h
    在某个时候被重命名为
    iostream
    ,作为标准:

  • 另见:


    谢谢皮特

    如果你感到困惑,那么简单一点:停止使用namespace std编写
    不“告诉编译器我们正在使用哪个
    字符串”
    ;它告诉编译器,本质上,将
    std
    中定义的所有名称视为也在全局命名空间中定义的名称。您可以在全局名称空间中定义自己的名称
    string
    ,并使用名称空间std
    将保证无论何时您引用
    字符串
    都是不明确的。顺便说一句,
    conio.h
    来自DOS,而不是Windows。很好的区别要指出,谢谢!将编辑
    #include <iostream>
    using namespace std;
    
    int main() {
        cout << "Hello World"; // outputs Hello World
        return 0;
    }