![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
voipp |
![]()
Сообщение
#1
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 116 Регистрация: 20.10.2009 Из: Msk Пользователь №: 1166 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Значит есть класс CTable от него наследуется CMatrix а от него SLAU.наследование открытое. в CTable определен operator=(const CTable& table). Строчки вида
без ошибок компилируются.А вот строчки вида вводят компилятор в недоумение(операции сложения и умножения выполняются без ошибок).Вот что он пишет: не найден оператор= принимающий правый аргумент типа CMatrixТеперь в недоумении я.Почему это происходит и как это исправить? Сообщение отредактировал voipp - 4.4.2010, 23:19 |
|
|
![]() |
kwisp |
![]()
Сообщение
#2
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
Ну вообще-то это кажется по стандарту. ![]() в том то и дело как я понял. если ты не пишешь ничего руками ни конструктор копий ни конструктор по умолчанию, то это за тебя сделает компилятор, однако если ты хотя бы в одном классе родительском переопределишь конструтор копий -- компилятор умывает руки, дальше делай всё сам. я так понимаю. |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 18.2.2025, 12:44 |