码迷,mamicode.com
首页 > 编程语言 > 详细

C++命名空间和头文件的关系 例如已经使用了#include<string>,为什么还要 using std::string?

时间:2015-05-10 23:53:51      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:

(1)如果C++程序中使用了带后缀".h"的头文件,那么不必在程序中声明命名空间,只需要文件中包含头文件即可;(2)C++标准要求系统提供的头文件不带后缀".h",但为了表示C++与C的头文件既有联系又有区别,C++中所用头文件不带后缀".h",而是在C语言的相应头文件名之前加上前缀c:

(3)自定义的头文件通常带后缀“.h",系统标准库文件不带后缀“.h"。

(4)因为标准库非常的庞大,所程序员在选择的类的名称或函数名时就很有可能和标准库中的某个名字相同。所以为了避免这种情况所造成的名字冲突,就把标准库中的一切h标识符都被放在名字空间std中。

(5)answer:如果不使用using std::string,就在程序中使用string 类型变量,程序不能识别是标准库中的string 变量。因为程序自定义头文件中也可能含有string变量。所以一定要声明using std::string。这样程序里面的string类型变量就都是std标准库中的string变量了。

 

C++命名空间和头文件的关系 例如已经使用了#include<string>,为什么还要 using std::string?

标签:

原文地址:http://www.cnblogs.com/ly01/p/4493281.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!