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

Оператор присваивания - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Написать функцию, определяющую пересекаются ли два отрезка http://www.cyberforum.ru/cpp-beginners/thread927457.html
На вход подаются координаты начал и концов двух отрезков. Нужно определить пересекаются ли они. Добавлено через 21 минуту Или хотя бы объяснить, как это написать
C++ Отладка консольного приложения в отладчике OllyDbg открыл оконный проект из Делфи, вся информация, код отображаются нормально. Таким же способом открыл обычную консольную программу, просто запустилась прога, а кода и никакой информации нету. Почему, что не так? http://www.cyberforum.ru/cpp-beginners/thread927451.html
Определить, сколько раз встречается число 5 среди элементов всей матрицы C++
Определить, сколько раз встречается число 5 среди элементов всей матрицы.
Аргументы для функции main() C++
Я совершенно не понял, каким образом работает, допустим вот такой фрагмент программы: int main(int argc, char **argv) { if (argc>1) { int i; for (i=1; i<argc; ++i) cout<<argv<<' '; cout<<argv; }
C++ Наследование классов и конструкторы http://www.cyberforum.ru/cpp-beginners/thread927404.html
#include <stdio.h> #include <conio.h> class form { public: form(){printf("form::form()\n");}; ~form(){printf("form::~form()\n");}; };
C++ Ошибка линковщика LNK2019: ссылка на неразрешенный внешний символ полный текст: Ошибка 1 error LNK2019: ссылка на неразрешенный внешний символ _WTSSendMessageA@40 в функции _main D:\Projects\ConsoleApplication91\ConsoleApplication91\Main.obj ConsoleApplication91 немного погуглив нашел, что эта проблема зачастую из-за проблем с хедерми и т.д., но у меня всего 1 файл в проекте (main.cpp) и ни одного хедера (тупо создал пустой проект и добавил его). Пишу код... подробнее

Показать сообщение отдельно
Познающая
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 25
23.07.2013, 10:45     Оператор присваивания
Добрый день!
Помогите, пожалуйста, разобраться. Я не совсем понимаю работу перегруженного оператора присваивания в классе String, который содержит переменные-члены: указатель char *itsString и переменную unsigned short itsLen (длина строки):
C++
1
2
3
4
5
6
7
8
9
10
11
12
String& String::operator=(const String & rhs)
{
    if (this == &rhs)
     return *this;
    delete [] itsString;
    itsLen=rhs.GetLen();
    itsString = new char[itsLen+1];
    for (int i=0; i<itsLen; i++)
     itsString[i] = rhs[i];
    itsString[itsLen] = '\ 0';
    return *this;
}
Я не понимаю, почему он должен возвращать вообще что-нибудь. Допустим, он изменил текущую строку, но для чего возвращать затем ссылку на нее?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 07:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru