|
1 / 1 / 0
Регистрация: 13.11.2017
Сообщений: 80
|
||||||
Классы и конструкторы09.04.2018, 14:32. Показов 1573. Ответов 17
Метки нет (Все метки)
Вообщем, вот мой код. Но мне сказали убрать все "cout" и вместо этого сделать так, что бы функции возвращали значения (я не шарю в этом), и так же нужно добавить конструктор. Буду очень благодарен за помощь
![]()
0
|
||||||
| 09.04.2018, 14:32 | |
|
Ответы с готовыми решениями:
17
Конструкторы и классы
Классы и конструкторы в c++ |
|
475 / 427 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
|
||||||
| 09.04.2018, 18:02 | ||||||
|
Какой конструктор то нужно добавить?
0
|
||||||
|
1 / 1 / 0
Регистрация: 13.11.2017
Сообщений: 80
|
||||||
| 09.04.2018, 18:57 [ТС] | ||||||
|
Вообще конструктор можно любой. Спасибо большое за помощь. Как я понял вот в этой части кода 3 конструктора, можешь пожалуйста объяснить что делает последний?
0
|
||||||
|
"C with Classes"
|
|
| 09.04.2018, 19:06 | |
|
0
|
|
|
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
|
||
| 09.04.2018, 20:15 | ||
|
0
|
||
|
1 / 1 / 0
Регистрация: 13.11.2017
Сообщений: 80
|
|
| 09.04.2018, 20:20 [ТС] | |
|
А это нормально что получаются такие большие значения в разности, произведении, частном, прибавлении и умножении на число таких дробей как 2/4 и 6/8 ?
0
|
|
|
1 / 1 / 0
Регистрация: 13.11.2017
Сообщений: 80
|
|
| 09.04.2018, 20:28 [ТС] | |
|
Как я понял, для выполнения какой либо операции, значения берутся из предыдущей операции. К примеру в произведении двух дробей берутся не 2/4 и 6/8, а 2/4 и 96/128.
Можно ли это исправить, что бы для всех операция брались дроби только 2/4 и 6/8 ?
0
|
|
|
475 / 427 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
|
|
| 09.04.2018, 20:59 | |
|
BQ 201, Тогда смысл возвращать что-то в функциях как ты написал? Убираешь возврат и внутри функции делаешь в объявленом временном экземпляре операции и выводишь внутри функции, но это тот же cout, от которого ты просишь избавиться.
Если нужно постоянно с теми же значениями, то перед каждой функцией задавай конкретные (в примере, что я привел, через SetValues)
0
|
|
|
1 / 1 / 0
Регистрация: 13.11.2017
Сообщений: 80
|
|
| 09.04.2018, 21:17 [ТС] | |
|
Готово, теперь результаты те которые нужны, но у меня еще один вопрос. В операции сравнения дробей, в первой части сравниваются дроби 6/8 и 2/4, но во второй части (d2,d3) какие дроби сравниваются здесь?
0
|
|
|
475 / 427 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
|
||
| 09.04.2018, 21:20 | ||
|
Для d2 срабатывает конструктор с параметрами, который задает значения 2,4. В d3 копируются значения из d2. Просто привел для примера вывод результата, когда дроби равны. Единственное, т.к. нет сокращений дробей, то сравнение проходит конкретно по параметрам числитель и знаменатель, переделай как тебе надо, как с тем же делением что было
0
|
||
|
309 / 221 / 74
Регистрация: 23.05.2011
Сообщений: 981
|
|||||||||||
| 09.04.2018, 21:24 | |||||||||||
|
SuperKir,
вместо
noexcept).
0
|
|||||||||||
|
1 / 1 / 0
Регистрация: 13.11.2017
Сообщений: 80
|
|
| 09.04.2018, 21:26 [ТС] | |
|
То есть во второй часть сравнивается дробь 2/4 сама с собой?
0
|
|
|
475 / 427 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
|
|
| 09.04.2018, 21:28 | |
|
BQ 201, нет, сравниваются дроби с одинаковыми значениями.
New man, смотря кому лучше)
0
|
|
|
1 / 1 / 0
Регистрация: 13.11.2017
Сообщений: 80
|
|
| 09.04.2018, 21:30 [ТС] | |
|
Ну тогда на этом все, всем спасибо большое за помощь
0
|
|
|
309 / 221 / 74
Регистрация: 23.05.2011
Сообщений: 981
|
||||||
| 09.04.2018, 21:44 | ||||||
|
SuperKir, всем лучше
![]() В итоге выходит, что мы конструктор объявили, но по факту он такой же, какой и был. И ещё неплохо сделать Drob()=default;В итоге ничего не теряешь, а компилятор спокойно объявляет тип std::is_trivial<Drob>::value==true и во всяких реаллокациях стандартных векторов заменяет копирование на memmove.Ну, и вот код, который подтверждает, что Drob() = default; делает то же, что и предыдущий.Кликните здесь для просмотра всего текста
Добавлено через 7 минут И да, я предпочитаю, чтобы за меня код писали IDE, компилятор, мальчишка-индус, парни со стэковерфлоу, кто угодно, а не я ![]() =default; очень приятен в этом плане.
0
|
||||||
|
1 / 1 / 0
Регистрация: 13.11.2017
Сообщений: 80
|
|
| 09.04.2018, 21:51 [ТС] | |
|
Хорошо учту это в будущем
0
|
|
|
Велосипедист...
353 / 220 / 73
Регистрация: 15.12.2015
Сообщений: 785
|
||
| 09.04.2018, 21:56 | ||
![]() Там же обычное почленное копирование идет, которое компилятор сам сделает, если нужно.
0
|
||
|
309 / 221 / 74
Регистрация: 23.05.2011
Сообщений: 981
|
||||||
| 09.04.2018, 22:12 | ||||||
|
Captain Maxee, ну,
=default; именно это и делает.А ещё делает то же самое для присваивания, move присваивания и т.п. Добавлено через 13 минут Сходу не могу придумать, для чего это можно использовать. Разве что контроль над ресурсом. Пусть Resource — тяжёлый ресурс, выделение которого мы хотим проконтролировать. То есть, при копировании, нам надо что-то дополнительно обработать. Пусть будет так, что он создаётся фабрикой, которую можно вызывать только в один поток. А вот move конструктор у него не требует никаких действий. Из-за этого нам для класса, который содержить поле Resource, надо явно прописать copy-конструктор, но в то же время при объявлении хотя бы одного такого дефолтный move конструктор не появляется. И это можно решить так:
1
|
||||||
| 09.04.2018, 22:12 | |
|
Помогаю со студенческими работами здесь
18
Классы и конструкторы Конструкторы и классы Классы. Конструкторы. Деструкторы Классы, конструкторы (найти ошибку)
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
|
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
|
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию.
2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|
|
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO
Апнулись до NET10.
Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта
так и в интерактивном режиме. из сложностей - чисто функциональный подход.
Решил. . .
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии.
. . .
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|