zoukankan      html  css  js  c++  java
  • [转]在头文件里避免使用using namespace XXX;

    转自:http://yongkai.blog.51cto.com/1290440/551999

    作为一个C++的最佳实践(Best Practice),我们可以说尽量避免在头文件中使用C++的using namespace XXX;

    为什么呢?因为头文件经常被包含在其他的头文件和cpp文件中。C++的编译器直接就把头文件字符串拷贝过来,这样就强制让另外的头文件和cpp也using namespace XXX; 这有时候可能会造成麻烦。

    比如说:

    在A.h中

    using namespace std;


    在B.h中,
    我们自己定义了一个类vector,
    class vector
    本想这个类是纯粹我们自己定义的,不是std的那个。

    可是在B.cpp中,
    我们
    #include "B.h"
    #include "A.h"

    vector a;

    在编译到此的时候,编译器就会报错,不知道这个vector到底是std的那个,还是我们自己定义的那个。

    所以我们最好不要在头文件中使用using namespace XXX;我们可以在头文件中直接使用全名称。在cpp中可以放心地使用它。

  • 相关阅读:
    SpringBoot
    SpringBoot
    MySQL
    Database
    Database
    MySQL
    Debug
    《mysql必知必会》学习_第18章
    C#中访问私有成员
    精彩语录收集
  • 原文地址:https://www.cnblogs.com/apigiraffe/p/3109778.html
Copyright © 2011-2022 走看看