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

Перегрузка оператора = - C++

Восстановить пароль Регистрация
 
joemcjoe
0 / 0 / 0
Регистрация: 09.11.2013
Сообщений: 26
15.05.2014, 16:14     Перегрузка оператора = #1
Есть некий класс. И два класса-наследника. Надо перегрузить оператор =, к тому же в дочерних классах вызывать перегрузку в базовом классе. Ошибка кода в том, что нельзя перегрузить оператор в классе, где есть чистая виртуальная функция.
C++
1
2
3
4
5
6
7
8
9
10
11
12
class CDyplSpecialist
{
protected:
    string name;
    string surname;
    string spec;
public:
    CDyplSpecialist() ;
    virtual void info()=0;
    virtual void personaldata();
    CDyplSpecialist operator = ( CDyplSpecialist& obj);
};
C++
1
2
3
4
5
6
7
class CDeveloper : public CDyplSpecialist
{
public:
    CDeveloper(string NAME, string SURNAME);
    void info();
 
};
C++
1
2
3
4
5
6
class CSysAdmin : public CDyplSpecialist
{
public:
    CSysAdmin(string NAME, string SURNAME);
    void info();
};
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2014, 16:14     Перегрузка оператора =
Посмотрите здесь:

C++ Перегрузка оператора %
Перегрузка оператора = C++
Перегрузка оператора C++
C++ перегрузка оператора
C++ Перегрузка оператора
C++ Перегрузка оператора ++
Перегрузка оператора *= C++
C++ Перегрузка оператора ++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
15.05.2014, 16:30     Перегрузка оператора = #2
почему это нельзя перегрузить? Можно! только пусть он не CDyplSpecialist возвращает, а что-нибудь другое!
kupnu4
26 / 26 / 9
Регистрация: 03.05.2013
Сообщений: 71
15.05.2014, 16:40     Перегрузка оператора = #3
проблема в том, что ты не можешь создавать объект чисто виртуального класса(в котором есть чисто виртуальная функция). А следовательно и не можешь его вернуть. Согласен с Kuzia domovenok. Попробуй возвращать что-нибудь другое.
Yandex
Объявления
15.05.2014, 16:40     Перегрузка оператора =
Ответ Создать тему
Опции темы

Текущее время: 16:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru