Форум программистов, компьютерный форум, киберфорум
Наши страницы

как реализовать перегрузку опрератора "="? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Работа с файлами и строками. http://www.cyberforum.ru/cpp-beginners/thread154975.html
Прошу помочь с этой задачкой, ибо СИ дается почему-то сложнее Паскаля, а темы на файлы, по-моему, самые сложные. Очень нужно. В общем задание: Дан символьный файл f. Группы символов, разделенные...
C++ Нарисовать квадрат Задача Написать программу, которая выводит на экран - следующую фигуру: ************* * * * * * * * * * * http://www.cyberforum.ru/cpp-beginners/thread154945.html
Реализация функции Substring с помошью указателей C++
Доброго времени суток! Решил реализовать функцию Substring в C++, с делал это так: char* SubString(char* str, int index, int length) { char resChar = ""; for(int j = index; j <...
C++ Разработать прогу которая хранит инфу о школьниках и их оценках с помощью map
С++. Задача. Разработать прогу которая хранит инфу о школьниках и их оценках за 5 экз. в виде отображения (map). Каждый эл-т отображения должен иметь след. вид: ключ - фамилия ученика, значение -...
C++ Написать программу просмотра на экране длинных текстовых файлов http://www.cyberforum.ru/cpp-beginners/thread154857.html
Написать программу просмотра на экране длинных текстовых файлов. Имя просматриваемого файла должно передаваться в программу в качестве параметра, читаемого с клавиатуры.
C++ Про С++ Вот вопрос... В С++ довольно большой синтаксис. В одной СТЛ только сколько всего. Вопрос к опытным людям, вы это все запоминаете? Или же смотрите в справочник, когда нужно? Или же практикуетесь и... подробнее

Показать сообщение отдельно
CheshireCat
Эксперт С++
2895 / 1244 / 78
Регистрация: 27.05.2008
Сообщений: 3,397
21.07.2010, 17:46
1. Исправь немного объявление:
C++
1
2
3
4
5
class Base
{
    public:
        virtual Base& operator=(const Base& d);   /// <-- вот тут
}
и точно так же в Derived.
2. Ну и, собственно, в реализации пиши что-то типа
C++
1
переменная = d.переменная;
Только не забудь про указатели - с ними работа немного хитрее, для них надо освободить старую память и аллокировать новую (а сколько - это зависит от экземпляра d). Если "переменная" имеет не-POD тип и для нее правильно реализован operator=(), то смело пиши просто переменная = d.переменная;
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru