C++实训笔记

命名空间

为了防止多人编程时出现重复的定义、函数名

  • 命名空间的定义形式:

    namespace 命名空间名称{

    ​ 内容(变量,函数等)

    }

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    namespace my
    {
    int a = 0;
    int add(int a, int b)
    {
    return a + b;
    }

    namespace mine
    {
    int b;
    }//命名空间里也可以套命名空间
    }
  • 命名空间的使用形式:

    1. 全体展开:

      1
      using namespace 名称
    2. 部分展开:

      1
      using 名称::变量名/函数名等
    3. 用到的时候再取用

      1
      int myA=名称::变量名;
  • 命名空间的注意点:

    1. 同名的成员不能包含两次
    2. 同一个命名空间可以定义多次,编译器最后会合成一个,但空间内同一个成员不能定义多次

内联函数

  • 在c中我们经常把一些短并且执行频繁的计算写成宏,而不是函数,这样做的理由是为了执行效率,
  • 宏可以避免函数调用的开销,这些都由预处理来完成。
  • 为了保持预处理宏的效率又增加安全性,而且还能像一般成员 函数那样可以在类里访问自如,C+ +引入了内联函数(inline function).
  • 内联函数为了继承宏函数的效率,没有函数调用时开销,然后又可以像普通函数那样,可以进行参数,返回值类型的安全检查,又可以作为成员函数。