[vc++ stl] где в коде ошибка?
template<class T>
C<T>::typename D C<T>::typename D::func
{
typename D d;
return d;
};
ну соответственно везде где нужно
после :: нельсзя использовать typename 

#include <iostream>
using namespace std;
template<class T> class C
{
public:
class D
{
public:
D func;
};
};
template<class T>
typename C<T>::D C<T>::D::func
{
typename C<T>::D d;
return d;
};
int main
{
C<int>::D d;
d.func;
}

вот что значит не иметь практики

хм в 6 не работает, а в 8 beta работает
а мне нужно в 6
а мне нужно в 6
Хехе, а там вообще С++ кривой...
6 вижак не является компилятором с++, вообще говоря... Чего ты от него хотел? 

Оставить комментарий
marizha
тут же есть definition этой функции...
вроде бы не нравится описание типа, возвращаемого функцией, но как его задать подругому?