Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
LuSkar
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 23
#1

Сравнение потомков - C++

22.01.2013, 19:24. Просмотров 280. Ответов 3
Метки нет (Все метки)

Как перезагрузить операцию сравнения (==) , для того, чтобы можно было сравнивать потомков в массиве указателей?

Добавлено через 39 минут
Должно выглядеть, типо так:
C++
1
2
bool operator == (Person *p1, Person *p2)
{ return p1->GetName()==p2->GetName()}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.01.2013, 19:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сравнение потомков (C++):

Полиморфизм и доступ к полям потомков - C++
Задача: накидать в окне прямоугольники и круги, а потом упаковать их максимально плотно. Делаем в Qt. Структура классов такая: есть базовый...

Вызвать из базового класса методы потомков - C++
Я не уверен как сделать, но нужно с базового вызвать все другие функции у наследников. class CMain { public: virtual void...

Построение сильноветвящегося дерева потомков человека - C++
Всех приветствую. Сам текст задания: Нужно построить дерево потомков человека. Дерево является сильноветвящимся. Каждый узел содержит...

Структура дерева с одним предком и множеством потомков - C++
Здравствуйте! Можете подсказать из каких полей состоит такая структура, у которой должен быть один предшественники множество потомков.

Принимать в качестве аргумента шаблона только потомков определенного класса - C++
Доброго времени суток. Возможно ли каким-либо образом создать шаблонный класс, который в качестве аргумента шаблона будет принимать только...

Определение элемента дерева который имеет наименьшее количество непосредственных потомков - C++
Определение элемента дерева который имеет наименьшее количество непосредственных потомков. Каждый элемент дерева содержит ссылку на...

3
Avazart
Эксперт С++
7245 / 5417 / 295
Регистрация: 10.12.2010
Сообщений: 24,033
Записей в блоге: 17
22.01.2013, 21:22 #2
Цитата Сообщение от LuSkar Посмотреть сообщение
Как перезагрузить операцию сравнения (==) , для того, чтобы можно было сравнивать потомков в массиве указателей?
А зачем ? Для этого есть функтуры, лямбды.
0
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
22.01.2013, 21:29 #3
LuSkar,
1) GetName - виртуальная функция
2) Либо используйся strcmp (если Name у тебя char*, либо и так должно работать, если Name - string, либо напиши свой класс для строки, где уже перегружай оператор ==)
0
Avazart
Эксперт С++
7245 / 5417 / 295
Регистрация: 10.12.2010
Сообщений: 24,033
Записей в блоге: 17
22.01.2013, 21:36 #4
При чем тут строки..

Если уж так нужен именно == ,то стоит указатель заменить самописным итератором, но это как-то мягко говоря некрасиво...
0
22.01.2013, 21:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.01.2013, 21:36
Привет! Вот еще темы с ответами:

Как сделать хитрое наследование? Хранить в одном контейнере родителя и потомков - C++
Доброго времени суток! Интересует, можно ли при создании класса-потомка назначать его родительский класс (не копировать, а именно...

Сравнение текста из файла и сравнение с текстом в программе char - Dev C++ - C++
Доброго времени суток! Имеется код программы: ifstream test("primer.txt"); char awm = "kod"; char buff; test >> buff; if (buff...

Сравнение C++ с С# - C++
Какие существенные достоинства и недостатки C++ есть по сравнению с C# ?

Сравнение 2х массивов в С++ - C++
Ребята, помогите пожалуйста написать вот такую прогу: Запросить и считать два массива у пользователя (две последовательности целых чисел...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru