|
4 / 4 / 3
Регистрация: 26.05.2014
Сообщений: 354
|
|
Какие методы родительского класса не наследуются?29.05.2014, 08:24. Показов 9939. Ответов 19
Метки нет (Все метки)
1. конструктор копирования
2. конструктор по умолчанию 3. перегруженная операция присваивания 4. деструктор 5. конструктор с параметрами 6. виртуальные
0
|
|
| 29.05.2014, 08:24 | |
|
Ответы с готовыми решениями:
19
Какие методы класса fstream отвечают за определение количества строк в файле и длины строки? |
|
БНТУ ФИТР
215 / 155 / 42
Регистрация: 26.12.2012
Сообщений: 382
|
|
| 29.05.2014, 10:00 | |
|
lev_, конструкторы не наследуются.
0
|
|
|
|
|
| 29.05.2014, 11:00 | |
|
И деструктор, стало быть, тоже.
0
|
|
|
4 / 4 / 3
Регистрация: 26.05.2014
Сообщений: 354
|
|
| 29.05.2014, 11:31 [ТС] | |
|
спасибо
0
|
|
|
43 / 43 / 21
Регистрация: 02.06.2013
Сообщений: 181
|
|
| 29.05.2014, 12:17 | |
|
Ничего из приведенного не наследуется, кроме виртуальных функций, виртуальность на наследование методов в плане наследования или не наследования того или иного метода базового класса производным влияния не оказывает. Правда в c++ 11 вроде уже можно наследовать конструкторы
0
|
|
|
|
|
| 29.05.2014, 18:23 | |
|
Denis123456789, а перегруженный operator= разве не наследуется?
0
|
|
|
43 / 43 / 21
Регистрация: 02.06.2013
Сообщений: 181
|
||||||
| 29.05.2014, 20:52 | ||||||
|
BumerangSP, нет не наследуется, потому что обычно оператор присваивания имеет в качестве параметра константную ссылку на объект того же класса, в котором этот оператор перегружается, поэтому сигнатура даже в родственных классах будет разнится. Например следующий код не компилируется (хотя здесь оператор присваивания принимает параметр отличный от объекта того же класса)
0
|
||||||
|
|
||||||
| 29.05.2014, 21:23 | ||||||
|
Denis123456789, я как бы сам всегда утверждал, что, мол, не наследуется, т.к. его действия сходны с конструированием объекта.
Но вот данный код что подразумевает? Может, я позабыл чего?
0
|
||||||
|
43 / 43 / 21
Регистрация: 02.06.2013
Сообщений: 181
|
|
| 29.05.2014, 21:34 | |
|
BumerangSP, компилятор снабжает класс оператором присваивания по умолчанию, при отсутствии определения в классе оператора присваивания (также как конструктором и деструктором по умолчанию при отсутствия их определения) . Оператор присваивания по умолчанию присваивает членам объекта слева , значения соответствующих членов объекта справа. Если члены класса не являются указателями на области динамической памяти, то оператора присваивания по умолчанию достаточно.
0
|
|
|
138 / 130 / 59
Регистрация: 13.12.2012
Сообщений: 293
|
||||||
| 29.05.2014, 21:45 | ||||||
|
BumerangSP, А здесь же вроде встроенный оператор вызывается, не?
Добавлено через 11 минут Denis123456789, operator= все-таки наследуется, но в вашем примере встроенный b::operator=(const b&) перекрывает базовый a::operator=(int), поэтому этот пример не компилируется. Можно сделать так
0
|
||||||
|
|
|
| 29.05.2014, 21:46 | |
|
Denis123456789, ничего не понял, конкретней можно?) Эти общие сведения я из книжек помню. Но сейчас для конкретного примера специального туда не полез.
ViktorKozlov, ну, я присваиваю объекту класса B объект того же класса. Надпись выходит "A::op=". Определю свой operator= в классе B - будет выведено то, что напишу в его теле. Почему? UPD: Вот, кажется, все.
0
|
|
|
138 / 130 / 59
Регистрация: 13.12.2012
Сообщений: 293
|
|
| 29.05.2014, 21:57 | |
|
BumerangSP, встроенные операторы присваивания, конструкторы по умолчанию и копирования обладают таким свойством, что вызывают соответствующие функции базового класса. В вашем случае, встроенный operator= вызывает operator= базового класса, который определен. Если же в производном классе определить свой operator=, то он не будет по умолчанию вызывать базовую версию (но можно это сделать явно)
1
|
|
|
|
|
| 29.05.2014, 22:09 | |
|
ViktorKozlov, да с конструкторами-то все ясно. Что-то я всегда обделял вниманием operator=...Хотя логично, по сути. Копирование ведь происходит прямым копированием данных соотв. переменных. Притом для каждого подобъекта копируются свои.
0
|
|
|
138 / 130 / 59
Регистрация: 13.12.2012
Сообщений: 293
|
|
| 29.05.2014, 22:24 | |
|
BumerangSP, да так и есть. Иначе кому нужен такой встроенный оператор, если он будет напрямую все копировать? Если некоторые поля или базовый класс имеют определенный оператор=, то почему бы им не воспользоваться? В принципе, вполне логично
0
|
|
|
8 / 8 / 3
Регистрация: 12.12.2013
Сообщений: 30
|
|
| 20.10.2016, 23:03 | |
|
Не наследуются:
Конструкторы и деструкторы, Перегруженные операторы, Дружественные(friend) функции
0
|
|
|
Вездепух
12930 / 6798 / 1819
Регистрация: 18.10.2014
Сообщений: 17,198
|
||
| 21.10.2016, 00:23 | ||
|
- Все перегруженные операторы наследуются (С чего бы это вдруг им не наследоваться?) - Упоминание friend-функций тут совсем не в кассу. О чем речь вообще? - Деструкторы действительно не наследуются. - С конструкторами ситуация сложнее. Сами по себе они не наследуются, но начиная С++14 конструкторы (с рядом исключений) можно наследовать явно, путем применения using-декларации.
0
|
||
| 21.10.2016, 00:25 | |
|
0
|
|
|
Вездепух
12930 / 6798 / 1819
Регистрация: 18.10.2014
Сообщений: 17,198
|
|||
| 21.10.2016, 00:34 | |||
|
Не по теме:
0
|
|||
| 21.10.2016, 00:41 | |
|
0
|
|
| 21.10.2016, 00:50 | |
|
0
|
|
| 21.10.2016, 00:50 | |
|
Помогаю со студенческими работами здесь
20
Как вызвать виртуальную функцию из дочернего класса, если она определена и вызывается в конструкторе РОДИТЕЛЬСКОГО класса? Вызов метода родительского класса Доступ к переменной родительского класса Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|