Найти - Пользователи
Полная версия: Перегрузка операторов
Начало » Python для новичков » Перегрузка операторов
1
Eliont
А можно как-нибудь организовать наподобие того что C++ ?
Рабочие функции перегрузки из моей проги на плюсах:
		bool operator== (const Array &a)
{for (int i=0;i<arsize;i++)
{if (arr[i]!=a.arr[i]) {return false;}}
return true;}

bool operator!= (const Array &a)
{for (int i=0;i<arsize;i++)
{if (arr[i]==a.arr[i]) {return false;}}
return true;}

int& operator[] (int index)
{return arr[index];}

Array& operator = (const Array &a){
arsize = a.arsize;
delete arr;
arr = new int[arsize];
set(a);}
AterCattus
object.__eq__(self, other)
<your code>

x==y будет работать как x.__eq__(y)

полный список методов можно найти в гугле, если нет под рукой нормального справочника.
Eliont
Спасибо. Запустил поис к по строке “python __eq__ ” и наткнулся на эту статью.
То, что надо.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB