Предположим, у меня есть участник:
Правильно ли писать функцию получения для этого члена:
Но когда мы это сделаем, теперь пользователь этого класса может изменить имя без установщика, поскольку у пользователя есть указатель на переменную кучи.
Я подумал об этом решении:
Код: Выделить всё
char* getName(){
char* otherName;
otherName = new char[10];
strcpy(otherName, name);
return otherName;
}
Но теперь, поскольку функция создает переменную кучи, пользователь может забыть удалить переменную кучи, и это будет мусор. Вот почему эта реализация не кажется правильным способом реализации функции получения и для этого члена.
Как мне ее реализовать?
Подробнее здесь:
https://stackoverflow.com/questions/784 ... r-variable