如果名称是using
关键字的别名,并且此名称需要用作转发声明,应使用哪个名称?原产地名称或新名称?该名称可以引用纯数据类型,类或命名空间。
例如:
A.H:
using ID = int;
namespace AA {class C;}
using namespace BB = AA;
B.cpp
//here function f is implemented
#include "A.h"
B.h:这里的ID需要一个前瞻声明
class ID;
namespace BB {class C;}
void f(ID i, BB::C c);
或者我们只能选择低于一个
//class int;
namespace AA {int C;}
void f(int i, AA::C c);