• C++笔记(二)------ 头文件


    类似#include<string>与#include<string.h>等头文件的区别

        

      标准的C++头文件没有.h扩展名,带有.h的头文件一般都是C语言的。例如#include<iostream>是C++的头文件,要使用更新的编译器.,#include<iostream.h>是C的头文件。对于C中的每一个头文件,C++标准库中都有一个不带“.h”扩展名的头文件与其相对应。但后者的很多内容都存放进了“std”名字空间中。也有些C++的头文件通过加上c的前缀表示来自于c,例如cmath就是由math.h变来的。

      但是string比较特殊。因为C++中本身就有一个名叫string的类,所以对于原来C中的string.h与其对应就不是string而是cstring .所以string与string.h没有任何关系,是毫无关系的两个头文件。三者的区别如下:
      <string.h>是旧的C 头文件,对应的是基于char*的字符串处理函数;
      <cstring>是对应于旧C 头文件的std 版本;
      <string>是包装了std 的C++头文件,对应的是新的string 类。

      命名空间std的辨析:

      using namespace std //使用名字空间(使用所有)

      using namespace std::cout//只使用cout

    如不用using,则在代码前可以用sdt::cout<<表示使用的是std中的cout。

      实例解析:

      #include<iostream.h>//必须要加上.h
      void main()
      {
        cout<<"Right?"<<endl;
      }

      #include<string>
      #include<iostream>//此处必须去掉.h
      usingnamespace std ;
      void main()
      {
        string s;
        getline(cin,s);
        cout<<"Right?"<<endl;
      }  

    iostream.h里面定义的所有类以及对象都是在全局空间里,所以你可以直接用cout   
    但在iostream里面,它所定义的东西都在名字空间std里面,所以你必须加上   
    using namespace std才能使用cout。

  • 相关阅读:
    hdu 4009 Transfer water(最小型树图)
    如何使用java调用DLL运行C++(初篇)
    腾讯笔试题(2015)
    md5算法原理一窥(其一)
    hdu 3038 How Many Answers Are Wrong ( 带 权 并 查 集 )
    Java 基础知识点(必知必会其二)
    Java 基础知识点(必知必会其一)
    web基础之hibernate(一篇)
    web基础之Structs(一篇)
    mysql知识初篇(一)
  • 原文地址:https://www.cnblogs.com/no-tears-girl/p/4953708.html
Copyright © 2020-2023  润新知