永远不会被和谐的C++代码简单说明

Visual C++ 6.0就是微软公司推出的C++代码开发工具,是使用最广的开发工具。本节介绍Visual C++ 6.0工具的开发环境和开发流程,看完本文你肯定有不少收获,希望本文能教会你更多东西。

后缀为.h的头文件C++标准已经明确提出不支持了,早些的实现将标准库功能定义在全局空间里,声明在带.h后缀的头文件里,c++标准为了和C区别开,也为了正确使用命名空间,规定头文件不使用后缀.h。

因此,当使用 时,相当于在c中调用库函数,使用的是全局命名空间,也就是早期的c++实现;当使用 的时候,该头文件没有定义全局命名空间,必须使用namespace std;这样才能正确使用cout。#t#

一般一个C++代码的老的带“.h”扩展名的库文件,比如iostream.h,在新标准后的标准库中都有一个不带“.h”扩展名的相对应,区别除了后者的好多改进之外,还有一点就是后者的东东都塞进了“std”名字空间中。

问题在于C++要兼容C的标准库,而C的标准库里碰巧也已经有一个名字叫做“string.h”的头文件,包含一些常用的C字符串处理函数,比如楼主提到的strcmp。  
这个头文件跟C++的string类半点关系也没有,所以 并非 的“升级版本”,他们是毫无关系的两个头文件。

要达到楼主的目的,比如同时:

 
 
 
  1. void func(){
  2. using namespace alex;//using指令
  3. using chris::love;//uisng声明
  4. love();//chirs::love();
  5. alex::love();//必须这么使用
  6. }

因为标准库非常的庞大,所程序员在选择的类的名称或函数名时就很有可能和标准库中的某个名字相同。所以为了避免这种情况所造成的名字冲突,就把标准库中的一切都被放在名字空间std中。但这又会带来了一个新问题。无数原有的C++代码都依赖于使用了多年的伪标准库中的功能,他们都是在全局空间下的。

所以就有了 和 等等这样的头文件,一个是为了兼容以前的 C++代码,一个是为了支持新的标准。 C++标准库中所有的标志府都被定义在一个名字空间std中,iostream也是标准库中的头文件,你查看一下include目录,会发现又两个头文件iostream.h和iostream,其中iostream.h是C++以前的库,iostream是在名字空间std中的库,所以当你包含头文件并想使用头文件中的标志符的时候有两种方法。

本文题目:永远不会被和谐的C++代码简单说明
本文网址:http://www.shufengxianlan.com/qtweb/news2/465152.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联