1
我應該怎麼做申報前A
,代表元素B
清單列表,每個指C
,即boost::recursive_wrapper
-s到A
?未便向前聲明表示元素
特別感興趣的是,何時所有類型都是模板化的。再說了,
template< typename F > struct expression
: tagged, boost::spirit::extended_variant<
nil,
F,
boost::recursive_wrapper< expression_list<F>
> >
{...};
然後應該是什麼expression_list?:
template< typename F > struct expression;
template< typename F >
using expression_list = std::list< expression<F> >;
... // definition of template< typename F > expression; here
不能boost::recursive_wrapper
的模板參數列表中使用,但在
template< typename F >
struct expression_list;
... // definition of template< typename F > expression; here
template< typename F >
struct expression_list
: std::list< expression<F> >
{ ; }
萬一有static_assert(!std::has_virtual_destructor< std::list< expression<F> > >::value, "has virtual destructor")
,因此,不能太習慣。
嗯?特別不清楚你打算如何使用......任何事情。你爲什麼不用評論發佈代碼,而不是描述你沒有展示的代碼的「散文」? – sehe 2013-04-27 11:48:04