我正在编写一个有多个依赖模块的库。当我包含来自另一个模块的文件时,应该使用以下方式解析命名空间:
using namespace project1::namespace1;
class1 obj;
或者
typedef project1::namespace1::class1 class1;
class1 obj;
每种方法的优缺点是什么?我在某个地方读到说我们应该在.H文件中使用typedef
,而在.C文件中使用using
,这样做是否可行?
我遇到的一个问题是,如果我在第三个模块中同时包含原始类和带有'typedef'的类,它会导致命名空间的歧义。
project1::namespace1::class1;
。 - hmjd