2
我試圖避免LOKI_TYPELIST_n宏,所以我雖然我可以寫簡單的洛基::類型串包裝。裹洛基::類型串與C++ 11可變參數模板
template <typename...Ts>
struct TYPELIST;
template <>
struct TYPELIST<>
{
typedef Loki::NullType Result;
};
template <typename HEAD, typename...Ts>
struct TYPELIST<HEAD,Ts...>
{
typedef Loki::Typelist<HEAD, TYPELIST<Ts...>::Result> Result;
};
在編譯時,我得到以下錯誤:
error: type/value mismatch at argument 2 in template parameter list for ‘template<class T, class U> struct Loki::Typelist’
error: expected a type, got ‘TYPELIST<Ts ...>::Result’
我雖然TYPELIST<Ts...>::Result
是一種類型。它有什麼問題? GCC 4.6.2在這裏。
我想用這樣的:
typedef TYPELIST<
EventTank1,
EventTank2,
EventTank3
>::Result EVENTS_ALL__;
謝謝。
哦... :(我偷懶用GCC提示錯誤信息忘記了'typename'的新版本。謝謝馬修。 – 2012-02-27 11:22:48