Я новичок в программировании на C ++, и в моем классе OPP нас попросили создать телефонную книгу.
Теперь, в лекции профессор сказал кое-что о том, что если вы хотите убедиться, что ваша переменная, которая вводится в метод, не изменяется, вы должны поместить в нее const.
вот мой код.
private:
static int phoneCount;
char* name;
char* family;
int phone;
Phone* nextPhone;
public:
int compare(const Phone&other) const;
const char* getFamily();
const char* getName();
и в Phone.cpp
int Phone::compare(const Phone & other) const
{
int result = 0;
result = strcmp(this->family, other.getFamily());
if (result == 0) {
result = strcmp(this->name, other.getName);
}
return 0;
}
Я продолжаю получать "объект имеет спецификаторы типа, которые не совместимы с членом"
когда я пытаюсь вызвать strcmp внутри моей функции сравнения.
Я знаю, что могу просто удалить const в объявлении функции, и он исчезнет, но я все еще не понимаю, почему он отображается в первую очередь.
Помощь будет принята с благодарностью.