LINUX.ORG.RU

С++. Пространства имён. ( GCC 4.3 )


0

0

namespace List
   {
    template<class TElement>

    class List
       {
        typedef ListImpl :: Node<TElement> Node;
       };
   }


namespace ListImpl 
   {
    template<class TElement>
   
    class Node
       {
        /* blah-blah-blah */
       };
   }

Error: ListImpl не был декларирован.

Вопрос: как сделать так, чтобы в List :: были видны объявления из ListImpl :: ? То есть, я объявляю второе пространство имём, а первое его не видит, так как второе определено позже. Я новичок, пробовал создать прототип в начале файла: "namespace ListImpl", но GCC сказало так не можно. 
anonymous

Точнее нужно сделать так, чтобы само ListImpl было видно в List.

anonymous
()
Ответ на: комментарий от dev-random

Дело в том, что и List нужно как-то видеть в ListImpl. Они видят друг друга.

anonymous
()
Ответ на: комментарий от Absurd

Вроде бы ошибки исчезли. Спасибо.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.