//File1.h
namespace FILE1
{
void fun1();
...
void funn();
}
//File2.h
namespace FILE2
{
void fun1();
...
void funn();
}
//utility.h
#include "FIle1.h"
#include "File2.h"
using namespace FILE1;
using namespace FILE2;
//utility.cpp
#include "utility.h"
#Include "..."
....编译一切正常
//other.cpp
#include "utility.h"
#include "..."
...编译出错,要么namespace FILE1未定义,要么namespace FILE2未定义。。。
教训:
有时候还是不要偷懒,在头文件中多写个namespace::还是值得的,否则以后维护你代码的人也会很郁闷。。。