我正在尝试创建一个以其内部定义的类之一为模板的类。
我以为,通过向前声明相关的类,我会没事的。
但是我不断收到编译时错误,例如:
use of undefined type QueryGetCustomer
Reply uses undefined class QueryGetCustomer
当
QueryGetCustomer
类位于Reply
内部时,有没有办法在Reply
类上模板QueryCustomer
,如该代码所示?class QueryGetCustomer;
class QueryGetCustomer::Reply; // error: use of undefined type QueryGetCustomer
// error: Reply uses undefined class QueryGetCustomer
class QueryGetCustomer :
public BaseQuery<QueryGetCustomer::Reply>
{
public:
class Reply { [....] };
};
附言当
Reply
类在QueryGetCustomer
类外部(全局)时,我具有这种模板结构。但是,
Reply
仅在查询中才有意义,因此我非常想将其作为内部类。 最佳答案
尝试转发声明内部类失败了。
您不能转发声明类的内部类型。而已。