вложенные шаблоны
От: ssm Россия  
Дата: 15.04.03 08:18
Оценка:
Есть код:


template<typename T1>
struct test{

    template<typename T, typename U> struct A{};

    template<typename T, typename U>
    struct B : public A<T, U>{
       typedef A<T, U> _Base;
    };

};

int main(){
    test<int>();
    return 0;
}


который gcc2.95 отказался компилить, говорит мол A — нешаблон. Comeau проглатывает на ура...
удалось только так забороть:


    template<typename T, typename U>
    struct B : public A<T, U>{
       typedef test<T1>::A<T, U> _Base;
    };


А посему возникает вопрос о корректности кода в первом примере.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.