Оператор += перегрузка, почему const? [дубликат] ⇐ C++
-
Гость
Оператор += перегрузка, почему const? [дубликат]
Возможный дубликат:
Что означает константа в конце функции-члена?
Дорогие все!
Я пытался перегрузить оператор += и получил ошибку «отбросить квалификаторы», только добавив «const» в конце метода, я смог избавиться от этой ошибки. Кто-нибудь может объяснить мне, зачем это нужно? Ниже код.
класс Vector{ публика: Вектор(); Вектор(целое); //int getLength(); ИНТ getLength () константа; const Vector & оператор += (const Vector &); ~Вектор(); частный: интервал m_nLength; интервал * m_pData; }; /*int Vector::getLength(){ возврат (это->m_nLength); }*/ int Vector::getLength() const{ возврат (это->m_nLength); } const Vector & Vector::operator += (const Vector & refVector){ int newLength = this->getLength() + refVector.getLenth(); ... ... возврат (*это); }
Возможный дубликат:
Что означает константа в конце функции-члена?
Дорогие все!
Я пытался перегрузить оператор += и получил ошибку «отбросить квалификаторы», только добавив «const» в конце метода, я смог избавиться от этой ошибки. Кто-нибудь может объяснить мне, зачем это нужно? Ниже код.
класс Vector{ публика: Вектор(); Вектор(целое); //int getLength(); ИНТ getLength () константа; const Vector & оператор += (const Vector &); ~Вектор(); частный: интервал m_nLength; интервал * m_pData; }; /*int Vector::getLength(){ возврат (это->m_nLength); }*/ int Vector::getLength() const{ возврат (это->m_nLength); } const Vector & Vector::operator += (const Vector & refVector){ int newLength = this->getLength() + refVector.getLenth(); ... ... возврат (*это); }
Мобильная версия