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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
joemcjoe
0 / 0 / 0
Регистрация: 09.11.2013
Сообщений: 26
#1

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

15.05.2014, 16:14. Просмотров 252. Ответов 2
Метки нет (Все метки)

Есть некий класс. И два класса-наследника. Надо перегрузить оператор =, к тому же в дочерних классах вызывать перегрузку в базовом классе. Ошибка кода в том, что нельзя перегрузить оператор в классе, где есть чистая виртуальная функция.
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++
Всем привет, проблема на этот раз такая. Для того, чтобы выучить классы, я пишу некое подобие класса string. Сложность вот в чем. Возникла...

Перегрузка оператора [] - C++
Здравствуйте. Пробую перегрузить оператор . template <class Element> class List { public: struct Node { Element el; ...

Перегрузка оператора = - C++
Доброго времени суток,не могу понять в чем проблема. Есть класс,в котором переопределен оператор +, есть массив классов, при попытке...

Перегрузка оператора *= - C++
Переписываю свой матричный калькулятор и решил внести в него перегрузку оператора *= Matrix* Matrix::operator *=(double num){ ...

Перегрузка оператора << - C++
Здравствуйте! Подскажите, пожалуйста, как выполнить перегрузку оператора &lt;&lt;? Для двух классов: class A { public:

перегрузка оператора [] - C++
объясните в 3х словах для ламера в чем смысл перегрузки, конкретно оператора

Перегрузка оператора - C++
Доброго времени суток. Столкнулся с проблемой перегрузки оператора &quot;++&quot; выдает ошибку в первой строке: postfix ‘const Counter...

Перегрузка оператора [][] - C++
добрый день. имею в классе двумерный массив. подскажите как правильно сделать перегрузку к классу, чтоб при ЭкземлплярКлассa...

Перегрузка оператора - C++
Здравствуйте! Помогите разобраться с перегрузкой операторов. Суть задания: Осуществите перегрузку оператора “++” так, чтобы при его...

Перегрузка оператора == - C++
Пытаюсь перегрузить оператор == . Делаю так: В классе: class cData // класс дата { int year; // год short mounth; //...

Перегрузка оператора = - C++
Здравствуйте, возникла проблема при перегрузке оператора. const digit &amp;operator=( const int &amp; ); const digit &amp;operator=( const char...

Перегрузка оператора -> - C++
обясните пожалуйста как перегружать -&gt; и для чего это нужно


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru