![]() |
Добавлено: 2007-05-03 10:45:45 Шаблоны выдают множество ошибок о недоступности переменных базовых классов |
Гость |
|
Ответить | Цитировать | |
![]() |
Добавлено: 2007-05-03 10:55:00 |
Raul![]() Зарегистри Сообщений: 101 (просмотреть) |
В новых компиляторах, соответствующих стандарту языка C++, изменены правила видимости переменных в шаблонах базовых классов. Чтобы к ним обратиться, надо использовать директиву using или префикс this->. В шаблонах применяется директива using. Но ее не понимают все еще популярные старые трансляторы, поэтому шаблоны определяют версию транслятора и включают соответствующий им код. Определение версии транслятора работает для Microsoft Visual C++, начиная c версии шаблонов 1.2 и для GNU g++, начиная с версии шаблонов 1.2a. Для остальных новых компиляторов потребуется вручную определить макро ALLOW_EXARRAY_USING. Его можно вписать в настройки транслятора или раcкомментировать в файле Exarray.h. |
Ответить | Цитировать |