Я все еще изучаю основы ООП в C ++, и возник вопрос при создании метода оператора с помощью конструктора преобразования.
Вот мой код:
Заголовокфайл:
class Integer {
private:
int num;
public:
Integer();
Integer(int);//Convert constructor
~Integer();
operator int();
int getNum();
};
Исходный файл:
Integer::operator int() {
return this->num; //No idea why I need to specify this-> here.
}
main
метод:
Integer a(50);
a = 100;
int b = (int)a;
cout << b << endl;
Итак, мой вопрос: зачем мне использовать this->
в методе operator int()
?Я не передаю конфликтующие параметры, поэтому это не должно быть проблемой для компилятора.Также я проверил это без, и он работал нормально.Но в моем учебнике, за которым я следую, прямо сказано, что я должен добавить this->num
.
Любые идеи?