рых компиляторах (например, Me

Автор admin Среда, 20 мая 2009 11:32

рых компиляторах (например, Metrowerks) правильное поведение при поиске активизируется специальным 1 Из презентации Херба Саттера (Herb Sutter). 2 Этот интерфейс используется некоторыми компиляторами, в том числе Comeau С++. 220 Глава 5 • Шаблоны ключом. Поскольку f является независимым именем, которое может быть разрешено на ранней стадии по контексту определения шаблона, когда в области видимости находится только f(double), результат должен выглядеть так: f(double) К сожалению, многие существующие программы зависят от этого нестандартного поведения с привязкой вызова f(l) из д() к более позднему определению f(int), поэтому производители компиляторов не хотят вносить изменения. Рассмотрим более подробный пример1: //: C05:Lookup2.cpp {-bor}{-g++}{-dmc} // Microsoft: необходим ключ -Za (режим ANSI) #include #include #include using std::cout: using std::endl; void g() { cout « “global g()” « endl: } template class Y { public: void g() { cout « “Y<" « typeid(T).name() « ">::gO” « endl; } void h() { cout « “Y<" « typeid(T).nameO « ">::hO” « endl: } typedef int E:


Комментарии закрыты.