|
0 / 0 / 1
Регистрация: 18.09.2010
Сообщений: 106
|
|
Создать класс "Студент" и классы "Бюджетный студент" и "Коммерческий студент"04.12.2011, 21:34. Показов 14650. Ответов 21
Метки нет (Все метки)
Доброго времени суток. Помогите с задачкой.
Наследование. Создать класс студент и классы бюджетный студент и коммерческий студент.
0
|
|
| 04.12.2011, 21:34 | |
|
Ответы с готовыми решениями:
21
Создайте файл Студент. Занесите в отдельный файл записи из файла Студент, добавив сведения о новых студентах |
|
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
|
||||||
| 04.12.2011, 22:11 | ||||||
|
Не вопрос.
1
|
||||||
|
0 / 0 / 1
Регистрация: 18.09.2010
Сообщений: 106
|
|
| 04.12.2011, 22:53 [ТС] | |
|
Спасибо. Один вопрос только: а классы бюджетный студент и коммерческий студент разве не должны наследовать свойства студента?
Как я понял, наследование заключается в том, что классы бюджетный студент и коммерческий студент наследуют часть свойств (или все свойства) студента, плюс к ним добавляется что то своё. В бюджетном, к примеру, размер стипы, а в коммерческом, например, стоимость курсов/учебы...
0
|
|
|
0 / 0 / 1
Регистрация: 18.09.2010
Сообщений: 106
|
||||||
| 04.12.2011, 23:11 [ТС] | ||||||
|
То есть так что ли будет выглядеть??:
0
|
||||||
|
0 / 0 / 1
Регистрация: 18.09.2010
Сообщений: 106
|
|
| 04.12.2011, 23:21 [ТС] | |
|
Я как бы от задания отталкиваюсь. То есть, как я понимаю, не приципиальны те параметры, которые на самом деле существуют у студента - бюджетника и коммерческого. Главное показать наследование. Но я не понимаю, как это записать. Подскажите.
0
|
|
|
1 / 1 / 0
Регистрация: 29.11.2010
Сообщений: 10
|
|
| 04.12.2011, 23:26 | |
|
Вероятно, требуется продемонстрировать особенности наследования. Задай какую-нибудь переменную в protected области в базовом классе, например число студентов. А в производных классах ее измени и выведи 3 значения.
0
|
|
|
0 / 0 / 1
Регистрация: 18.09.2010
Сообщений: 106
|
|
| 04.12.2011, 23:30 [ТС] | |
|
Помогите реализовать. Самый простой пример.
0
|
|
|
1 / 1 / 0
Регистрация: 29.11.2010
Сообщений: 10
|
||||||
| 04.12.2011, 23:49 | ||||||
|
Может быть, что-то вроде такого. Не уверен, что правильно понял задание.
1
|
||||||
|
0 / 0 / 1
Регистрация: 18.09.2010
Сообщений: 106
|
|
| 05.12.2011, 00:00 [ТС] | |
|
Спасибо огромное, что время уделили. Я кстати, тоже не совсем понял задание. Формулировка немного расплывчата. По идее то, если исходить из самого задания, то верным ответом будет то, что написал пользователь lemegeton, однако в таком случае все слишком просто получается.
А вас ещё раз благодарю. Жаль, только плюсик нет возможности поставить.
0
|
|
|
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
|
||||||
| 06.12.2011, 22:23 | ||||||
|
Предыдущий приведенный пример сильно некорректный. Так неправильно писать. Вот абсолютно вымышленный, но более-менее корректный пример.
1
|
||||||
|
|
|
| 06.12.2011, 22:40 | |
|
Вариант от Serj-spb некорректен вот почему: все три класса обладают одним и тем же свойством st, но имеют разное значение по умолчанию. Это не есть демонстрация наследственности. С таким же успехом можно было создать один класс и три экземпляра класса с разными значениями свойства
Вариант от lemegeton идеален (с точки зрения демонстрации наследственности): есть действительно базовые свойства, присущие всем студентам, и есть свойства, присущие только коммерческим или бюджетным студентам. Единственное, что я бы сделал класс Student абстрактным (то бишь запрет на создание экземпляра данного класса). Потому что абстрактных студентов (в нашей задаче) не бывает: студент либо бюджетный, либо коммерческий. И в бюджетного студента добавил своё свойство, а то получается, что бюджетный студент выглядит как подмножество коммерческого студента Добавлено через 2 минуты Вообще, я бы порекомендовал этот пример показывать начинающим, как пример правильной реализации наследования
1
|
|
|
0 / 0 / 1
Регистрация: 18.09.2010
Сообщений: 106
|
|
| 06.12.2011, 22:50 [ТС] | |
|
Огромное спасибо, Вам. Только вот у меня вопрос: с помощью конструктора сделана данная задачка? И как добавить в вывод бюджетного студента количество стипендии?
0
|
|
|
0 / 0 / 1
Регистрация: 18.09.2010
Сообщений: 106
|
|
| 07.12.2011, 00:18 [ТС] | |
|
Странно, что при запуске программа вылетает... Появляется окно для ввода и тут же исчезает...
0
|
|
|
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
|
||||||||
| 07.12.2011, 01:17 | ||||||||
Добавлено через 7 минут
1
|
||||||||
|
|
||
| 07.12.2011, 13:39 | ||
|
0
|
||
|
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
|
|||
| 07.12.2011, 14:13 | |||
|
Можно не делать pure virtual interface класс, а просто наделить базовый класс абстрактной функцией. Но так как-то не по-понятиям. )
0
|
|||
|
|
|||
| 07.12.2011, 15:15 | |||
|
0
|
|||
| 07.12.2011, 15:15 | |
|
Помогаю со студенческими работами здесь
20
Создать класс студент Создать класс студент Создать расширенный класс СТУДЕНТ
Создать основной класс студент и создать класс наследник с именем отделения Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|