Показать сообщение отдельно

  #7  
Старый 15.06.2007, 15:36
Aag
Познающий
Регистрация: 26.07.2005
Сообщений: 54
Провел на форуме:
47901

Репутация: 46
По умолчанию

gcc -v: gcc version 3.3.5

Попробывал на mingw 3.4.5 под win действительно не работает.

Но при минимальных изменениях все работает под mingw 3.4.5
Код:
#include <iostream>

template <typename aType>
class testClass{
public:
       aType data;
       testClass(aType c): data(c) {};
       bool friend operator==(testClass<aType> a, testClass<aType> b){return a.data==b.data;} ;
};


int main(){
       int a=4;
       testClass<int> b(4);
       if (a==b) std::cout << "a equals b\n";
       if (b==a) std::cout << "b equals a\n";
};
то есть если внести описания друга внутрь класса.

Вот посмотри еще http://en.wikipedia.org/wiki/Barton-Nackman_trick

Последний раз редактировалось Aag; 15.06.2007 в 15:40..