RSS RSS
Добавлено: 2007-05-03 11:09:50   Файл Exarray.h выдает множество ошибок о недоступности переменных базовых классов
Гость



Ответить | Цитировать
Добавлено: 2007-05-03 11:10:10
Raul

Зарегистрирован(а): 17.03.2010

Сообщений: 101 (просмотреть)
В новых компиляторах, соответствующих стандарту языка C++, изменены правила видимости переменных в шаблонах базовых классов. Чтобы к ним обратиться, надо использовать директиву using или префикс this->.

В шаблонах Exarray.h применяется директива using. Но ее не понимают все еще популярные старые трансляторы, поэтому шаблоны определяют версию транслятора и включают соответствующий им код. Определение версии транслятора работает для Microsoft Visual C++, начиная c версии класса 1.2 и для GNU g++, начиная с версии класса 1.2a.

Для остальных новых компиляторов потребуется вручную определить макро ALLOW_EXARRAY_USING. Его можно вписать в настройки транслятора или раcкомментировать в файле Exarray.h.

ПРИМЕЧАНИЕ: Если Вы используете устаревшую версию класса, то к ней можно подгрузить шаблоны версии 1.2a со страницы http://www.imach.uran.ru/exarray/indexr.html

Ответить | Цитировать