Re[7]: Определение типа данных в потомке
От: remark Россия http://www.1024cores.net/
Дата: 23.04.10 08:40
Оценка:
Здравствуйте, rus-k, Вы писали:

RK>
RK>template<typename T>
RK>struct Base
RK>{
RK>    T::X m_x;        // Ошибка!!!
RK>    void foo()
RK>    {
RK>        T::X m_x;    // Допустимо!!!
RK>    }
RK>};
RK>

RK>Только не понятно, в чем разница. Так локальная переменная, так член класса...

Я могу повторить ещё раз, мне не сложно.
В первом случае у тебя циклическая зависимость между определениями классов.
Во втором случае циклической зависимости нет (тело функции-члена не является часть определения класса — оно вообще может быть вынесено в отдельную единицу трансляции).


1024cores &mdash; all about multithreading, multicore, concurrency, parallelism, lock-free algorithms
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.