可以一行完成以下操作吗?

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/

10-13 07:04