Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
Fennec
1 / 1 / 0
Регистрация: 10.02.2010
Сообщений: 36
#1

Мономорфный класс - C++

11.12.2012, 21:03. Просмотров 1237. Ответов 7
Метки нет (Все метки)

Кто-нибудь может объяснить значение термина мономорфный класс? Весь интернет целиком молчит по жанному поводу, не давая каких либо вразумительных ответов. Я знаком с основными концепциями ООП такими как абстракция, наследование, инкапсуляция и полиморфизм. Следуя логике, если полиморфизм, это концпция позволяющая объектам, наследующимся от одного класса иметь различную реализацию методов, то мономорфизм соотвествует, выходит концепции отсутствия возможности это делать, так? Выходит ли, что мономорфный класс в C++ эквивалентен реализации класса с помощью модификатора final?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2012, 21:03     Мономорфный класс
Посмотрите здесь:

Есть класс A и класс B, класс B вложен в класс A и вложен в него, как классу B получить доступ к переменным класса A просто по имени? - C++
На самом деле ничё фантастического я не прошу, ведь: template <class T> class matrix { friend class diagonal; ...

Класс таблиц баз данных и класс записей в таблице(реляционная таблица). Предусмотреть класс связей между таблицами - C++
Здравствуйте! Никак не могу продумать структуру этой программы. Проходим наследование, но я все равно не знаю, как его здесь применить. Как...

Отдельно класс данных, класс формул и главный класс - C++
Здравствуйте! У меня есть три вопроса. Первый вопрос. Скажите пожалуйста! Правильный ли это подход к созданию приложений :...

Реализовать класс родительский класс "Пара чисел" и класс-наследник "Комплексное число" - C++
Ткма работы создать класс pair (пара чисел); определить метод перемножения полей и операцию сложения пар (a,b)+(c,d) =(a+b,c+d)...

Класс, производный класс, паблик-класс - C++
Задание: Создать класс колесо, которое имеет радиус. Определить конструкторы и метод доступа. Создать класс машин, содержащий класс колесо....

Создать класс “Автомагазин”, состоящей из класса ”Марки машин”. Класс “Автомагазин ”:название магазина, адрес, телефон. Класс “ Марки машин ”: марка - C++
Создать класс “Автомагазин”, состоящей из класса ”Марки машин”. Класс “Автомагазин ”:название магазина, адрес, телефон. Класс “ Марки...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
estiva
0 / 0 / 0
Регистрация: 05.03.2012
Сообщений: 8
11.12.2012, 22:56     Мономорфный класс #2
А откуда вы взяли термин мономорфный класс?
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
11.12.2012, 22:58     Мономорфный класс #3
Цитата Сообщение от Fennec Посмотреть сообщение
Мономорфный класс
Первый раз слышу такой термин, интересно, что это означает.
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
11.12.2012, 23:12     Мономорфный класс #4
Скорее всего финальный класс. Если бы речь шла о функции - то не перегруженная функция.
Вообще странный термин. Хм... нестандартный.
Fennec
1 / 1 / 0
Регистрация: 10.02.2010
Сообщений: 36
11.12.2012, 23:40  [ТС]     Мономорфный класс #5
Я вам всем отвечу честно, я сам не знаю, что это есть за фиговина такая.

Мне прислали такое вот тестовое задание

Перегрузка оператора присваивания

Пусть есть класс

C++ (Qt)
1
2
3
4
5
6
7
8
9
class Boo : public SuperBoo {
 
Foo* fFoo1;
 
Foo* fFoo2;
 
// ...
 
}
Где Foo - мономорфный класс, а класс Boo владеет указателями fFoo1, fFoo2.

Задача: перегрузить оператор присваивания для класса Boo.
Может быть исходя из контекста кто-нибудь сможет помочь вывести определение. Честно говоря практически сразу задумался над тем, чтобы написать в ответном письме вопрос о том, что же они имели ввиду под этим термином, остановило пожалуй лишь только то, что на просторах интернета где-то таки увидел в паре статей его упоминание.

Поповоду перегрузки функции присваивания в C++ все более менее понятно, насколько я понимаю, берем метод public operation = и переписываем его. Это с одной стороны. С другой стороны, если указанный термин все таки подуразумевает финальный класс, то по всей видимости это означает, что метод переписать таки оппросту невозможно. Как в таком случае нужно поступить?
gray_fox
What a waste!
1257 / 1140 / 55
Регистрация: 21.04.2012
Сообщений: 2,362
Завершенные тесты: 3
12.12.2012, 00:17     Мономорфный класс #6
Fennec, наверно имеется в виду, что Foo - неполиморфный и не имеет наследников, хотя я первый раз такой термин вижу, так что точно сказать не могу. Если это так, то для Foo можно спокойно вызывать оператор присваивания и не бояться slicing и прочей гадости. По крайней мере это имеет смысл в контексте задания)
Fennec
1 / 1 / 0
Регистрация: 10.02.2010
Сообщений: 36
12.12.2012, 00:30  [ТС]     Мономорфный класс #7
gray_fox Ну то есть я верно понимаю, что в конечном итоге это синонимично финальному классу?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2012, 00:42     Мономорфный класс
Еще ссылки по теме:

Абстрактный класс CGraphicsObject, его наследник - базовый класс CPoint, и класс - наследник от CPoint - C++
Всем доброй ночи! Очень нужна помощь и по мере возможности разъяснения на темы: абстрактный класс в задании(что он из себя представляет и...

Иерархия геометрических объектов: клас точка->класс квадрат->класс прямоугольник - C++
Иерархия геометрических объектов: класс точка->класс квадрат->класс прямоугольник. Построить эту иерархию наследованием.. Прошу помочь -...

Реализовать класс Goods используя для представления цены класс Money - C++
Реализовать класс Goods (пункт 1 ), используя для представления цены класс Money с пункта 2 Реализовать метод уценки товара, уменьшая цену...

Создать класс Pair(пара чисел) и класс-наследник Fraction - C++
Создать класс Pair (пара чисел); определить методы изменения полей и сравнения пар: пара p1 больше пары p2, если (first.p1>first.p2) или...


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

Или воспользуйтесь поиском по форуму:
gray_fox
What a waste!
1257 / 1140 / 55
Регистрация: 21.04.2012
Сообщений: 2,362
Завершенные тесты: 3
12.12.2012, 00:42     Мономорфный класс #8
Fennec, вероятно. Что имели в виду авторы задания я сказать не могу.
Yandex
Объявления
12.12.2012, 00:42     Мономорфный класс
Ответ Создать тему
Опции темы

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