Здравствуйте, blackhearted, Вы писали:
B>1. Нормальный код приведите, а не "typedef XXX".
B>2. Почитайте книгу по шаблонам, хотя бы синтаксис.
B>3. Возьмите нормальный компилятор.
виноват.
1)вот код:
struct XXX
{
int a,b,c;
};
class C{
public:
typedef XXX B;
};
template<class T>
class A{
public:
typedef /*typename*/ T::B B;
};
class F{
public:
template<class T>
int func(T::B& a){return 0;}
};
int main(int argc, char* argv[])
{
A<C>::B a;
F f;
int rc = f.func(a);
return 0;
}
3) под (например) msvs 2005 — вообще не компиляется ( даже без main ).
да и вообще — чем сказано — тем и компиляю
2) спасибо за совет. обязательно воспользуюсь, раз ответить затруднительно.
вообще-то я за помощью обращаюсь. или форум нужен чтобы на нём советовали почитать первоисточники?