可以一行完成以下操作吗?
typedef BOOST_TYPEOF(generator) G;
typename G::value_type next;
typename BOOST_TYPEOF(generator)::value_type next; //does not compile
谢谢
最佳答案
尝试使用mpl::identity
typename mpl::identity<BOOST_TYPEOF(generator)>::type::value_type next;
该宏可能正在扩展到某些编译器内部函数,例如
__typeof__(...)
,这些内部函数不一定有资格作为嵌套名称说明符出现。甚至在decltype(...)
之前甚至不允许C ++ 0x提议的::
,但在FCD中。关于c++ - 在表达式中使用BOOST_TYPEOF,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3162533/