1. namespace ```cpp 为了解决同名变量冲突的问题 namespace space1{ int x; double y; }

namespace space2{ int x; double y; }

通过这样的方式 space1::x space2::x就不会产生冲突

  1. ```cpp
  2. 但这样写实在太麻烦了
  3. 于是采用:
  4. using namespace space1
  5. using namespace space1::x
  6. 让代码变得更加简洁


  1. inline ```cpp 宏定义函数:直接将使用宏定义函数的部分替换为宏定义中的代码,因此不需要进行函数调用,从而没有出入栈的开销
    1. 但问题是容易产生歧义,有错误很难发现
    inline:类似于宏定义函数,也是进行代码替换而不进行函数调用,且由于书写方式与函数完全相同,因此不易产生歧义

例子:

include

using namespace std;

define SQR(i) ((i)*(i))

inline sqr(int i) { return i * i; }

int main() { cout << SQR(3) << endl;
cout << sqr(3) << endl;

  1. return 0;

} ```