1

通常,当有人创建控制台程序时,他会编写

#include <iostream>
#include <stdlib.h>

int main(){
    std::cout<<"hello world"<<std::endl;
    system("pause");
}

std必须包含调用coutendl语句。

.h当我使用标头和and中的代码创建一个库.cpp,然后包含该库时,我必须直接使用函数/类/结构/等的名称。我怎样才能做到,所以我必须使用像stdfor coutand这样的前置词endl

4

3 回答 3

4

它被称为命名空间

你可以像这样在命名空间中声明你自己的东西:

namespace mystuff
{
    int foo();
}

界定:

int mystuff::foo()
{
    return 42;
}

要使用:

int bar = mystuff::foo();

或者,导入一个命名空间,就像您std不想完全限定所有内容一样:

using namespace mystuff;
// ...
int bar = foo();
于 2013-08-07T22:04:34.043 回答
0

你必须像这样定义命名空间

namespace mynamespace {
    class A{
        int func(){
        }
    }
    void func2(){}
}

你可以像这样导入命名空间

using namespace mynamespace;
于 2013-08-07T22:04:42.197 回答
0

STD 前缀是一个命名空间。

要定义/声明命名空间,您可以按照该示例进行操作:

namespace test
{ int f(); };

f 属于 namspace 测试。打电话给你可以

test::f();

or

using namespace test;
 ....
 f();
于 2013-08-07T22:05:15.340 回答