繁体   English   中英

forward声明模板别名

[英]forward declare a template alias

我有一个别名模板,使用using指令定义:

template<typename A>
using T=TC<decltype(A::b),decltype(A::c)>;

C ++ 11是否提供了一种机制来转发声明此模板别名T

我试过了:

template<typename> struct T;

和:

template<typename>
using T;

但两者都返回编译器错误(“与先前的声明冲突”)。 我使用的是gcc 4.8。

使这个工作的语法是什么?

不,这是不可能的。

你想要做的是转发声明TC ,然后在它下面定义T

template<typename T, typename U>
struct TC;

template<typename A>
using T=TC<decltype(A::b),decltype(A::c)>;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM