Оператор за присвояване
Облик
За информацията в тази статия или раздел не са посочени източници. Въпросната информация може да е непълна, неточна или изцяло невярна. Имайте предвид, че това може да стане причина за изтриването на цялата статия или раздел. |
Операторът за присвояване в езика за програмиране C++ е „=“ (на английски: assignment operator). Както повечето оператори в езика и той може да бъде предефиниран. Това се прави най-вече в обектно ориентираното програмиране, когато потребителят иска да присвои един обект на друг. Той е част от така наречената Голяма тройка, която в повечето случаи е задължителна при моделирането на клас.
Пример за предефиниция на оператора „=“
[редактиране | редактиране на кода]#include <iostream>
#include <string.h>
using namespace std;
class Example
{
char* ex;
public:
//...
Example& operator =(const Example& t); // Предефиниране на =
//...
};
Example& Example::operator =(const Example& t)
// Предефиниране на =
{
if (this != &t)
{
delete [] ex;
ex = new char [strlen(t.ex) + 1];
strcpy (ex, t.ex);
}
return *this;
}
//...