Привет, я пытаюсь перегрузить оператор присваивания класса, чтобы вернуть член класса (данные).Оператор переопределения C++ = вызов метода ToInt()
class A{
public:
int32_t ToInt32() { return this->data; }
void SetData(int32_t data) { this->data=data; }
private:
int32_t data;
}
Я хочу перегрузить оператор =, так что я могу сделать следующее:
A *a = new A();
a->SetData(10);
int32_t Testint;
Testint = a;
и теперь a
должны быть 10
.
Как я могу это сделать?
Вы не можете перегрузить 'operator =()' для примитивных типов. То, что вы можете сделать, это предоставить оператор литья для 'A', но назначение должно выглядеть так:' Testint = * a; ' –