您的位置:首页 > 游戏 > 游戏 > 高端外贸网站制作_怎么制作网页调查问卷_深企在线_seo一个月工资一般多少

高端外贸网站制作_怎么制作网页调查问卷_深企在线_seo一个月工资一般多少

2024/11/18 5:54:38 来源:https://blog.csdn.net/fly_binbin/article/details/142314553  浏览:    关键词:高端外贸网站制作_怎么制作网页调查问卷_深企在线_seo一个月工资一般多少
高端外贸网站制作_怎么制作网页调查问卷_深企在线_seo一个月工资一般多少

咱们在前面的程序中,提到过使用using namespace std;引入这个命名空间,那么std就是由编程系统提供的标准命名空间,那什么是命名空间呢?

想像一下,比如一个年级的学生,在记录的时候出现了重名的情况,那么这个时候应该怎么记录呢,是不是需要加一些其它的名称,比如,一三班小李同学,一一班小李同学,那个C++中也会存在类似的情况,比如我们定义一个打印函数,

#include <iostream>
using namespace std;void prnt()  //打印A
{cout << "printA" << endl;
}int main()
{prnt();return 0;
}

上面定义了一个prnt()函数,程序执行:

但是如果想再定义一个,那么这个时间,如果再写一个,会出现什么情况?

#include <iostream>
using namespace std;void prnt()  //打印A
{cout << "printA" << endl;
}
void prnt()  //打印A
{cout << "printB" << endl;
}int main()
{prnt();return 0;
}

这个时候运行程序,会出现什么情况?

下面的错误提示,

提示重复定义。

这个时候应该给一个改名,当然改名字没有任何问题,可以使用,但是如果不改名,应该怎么处理,这个时候就可以使用命名空间,

#include <iostream>
using namespace std;namespace A {void prnt() { //打印Acout << "printA" << endl;}
}
namespace B {void prnt() { //打印Acout << "printB" << endl;}
}
int main() {A::prnt();B::prnt();return 0;
}

增加了两个命名空间,A和B,在使用的时候,直接使用A::prnt();B::print()即可调用不同的函数,就像喊小李同学一样,如果直接喊,那么不知道叫的哪个,但是如果加上一一班小李同学,那么这个时候就可以明确确定是叫谁,这个规则是一样的。

命名空间可以定义到一个文件中,也可以定义到几个文件中,即不一定是连续的文件中,这个时候只要引入即要将同样的命名空间引入。

命名空间中可以定义常量,变量,函数等,并且可以嵌套,如

#include <iostream>
using namespace std;namespace A {namespace AA{void prnt() { //打印Acout << "printA" << endl;}}
}int main() {A::AA::prnt();return 0;
}

在A的命名空间中再定义了AA的空间,那么引入的时候,就成了A::AA::prnt()即可。

但是注意命名空间只能定义到全局,不能定义到函数中,比如

#include <iostream>
using namespace std;void funA()
{namespace A {namespace AA {void prnt() { //打印Acout << "printA" << endl;}}}
}
int main() {A::AA::prnt();return 0;
}

那么这个时候就是错误的,

 这个在使用的时候注意即可。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com