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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Работа с файлами и строками. http://www.cyberforum.ru/cpp-beginners/thread154975.html
Прошу помочь с этой задачкой, ибо СИ дается почему-то сложнее Паскаля, а темы на файлы, по-моему, самые сложные. Очень нужно. В общем задание: Дан символьный файл f. Группы символов, разделенные пробелами(одним или несколькими) и не содержащие пробелов внутри себя, будем называть "словами". Удалить из файла все однобуквенные(например: "gggg","yy" ) слова и лишние пробелы. Результат записать в...
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 < (index + length); j ++) { char c ; wsprintf(c, "%c", str);
C++ Разработать прогу которая хранит инфу о школьниках и их оценках с помощью map
С++. Задача. Разработать прогу которая хранит инфу о школьниках и их оценках за 5 экз. в виде отображения (map). Каждый эл-т отображения должен иметь след. вид: ключ - фамилия ученика, значение - набор оценок за 5 экзов. Собственно, понять бы как записать массив в значение для ключа... #include <iostream> #include <string> #include <map> int main() {
C++ Написать программу просмотра на экране длинных текстовых файлов http://www.cyberforum.ru/cpp-beginners/thread154857.html
Написать программу просмотра на экране длинных текстовых файлов. Имя просматриваемого файла должно передаваться в программу в качестве параметра, читаемого с клавиатуры.
C++ Про С++ Вот вопрос... В С++ довольно большой синтаксис. В одной СТЛ только сколько всего. Вопрос к опытным людям, вы это все запоминаете? Или же смотрите в справочник, когда нужно? Или же практикуетесь и поэтому все входит в голову на автомате? подробнее

Показать сообщение отдельно
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,307
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.переменная;
 
Текущее время: 02:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru