내에서 허용된다오류 (A disambiguator 등) '템플릿'에만 나는 다음과 같은 정의가 템플릿
typedef boost::multi_index_container<
ModelPtr,
boost::multi_index::indexed_by<
boost::multi_index::sequenced<boost::multi_index::tag<byInsertOrder> >, // to keep order of inserting
boost::multi_index::ordered_non_unique< boost::multi_index::tag<byPriority>,
boost::multi_index::const_mem_fun<IModel,
unsigned int,
&IModel::getPriority>,
std::greater< unsigned int> // from the highest priority to the lowest
>
>
> ModelContainer;
typedef ModelContainer::template index<AOActivationList::byInsertOrder>::type ModelByInsertOrderType; (*)
문제는 내가 GCC 4.5.3로 컴파일 할 때 나는 다음과 같은 오류를 얻을 수 있습니다 : 오류 : 템플릿 내 '템플릿'(제외 어)은 템플릿 내에서만 허용됩니다. (*)이 표시된 행. Visual Studio 2008에서는 컴파일됩니다.
그 이유는 무엇입니까? 그것을 고치는 방법? 이 라인에