2Oldring
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено DASM 19 июня 2003 г. 16:47


есть иерархия
class CShape
{
... абстрактный он
};

class CCircle : public CShape
{
};

class CRect : public CShape
{
};


есть ф-ция void Foo (CShape& pObject)
т.е. в нее передается ССЫЛКА на наследника
И есть некая сторонняя ф-ция CShape *AnotherFoo ()
которая возвращает УКАЗАТЕЛЬ на CShape

и вот внутри Foo мне нужно сравнить pObject и результат работы AnotherFoo

Сравнение идет по адресу (фактически нужно определить идентичность этих объектов)
ВОПРОС. Как переопределить оператор == ?

Нужно ли это делать только в CShape или надо в наследниках тоже

Я написал такой бред (ессно не пашет)

virtual bool operator==(const CShape& a) const
{

return this == &a;
}

Help please


Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru