Как написать геттер, который обращается к переменной-члену, выделенной в кучеC++

Программы на C++. Форум разработчиков
Anonymous
Как написать геттер, который обращается к переменной-члену, выделенной в куче

Сообщение Anonymous »

Предположим, у меня есть участник:

Код: Выделить всё

char* name;
Правильно ли писать функцию получения для этого члена:

Код: Выделить всё

char* getName(){
return name;
}
Но когда мы это сделаем, теперь пользователь этого класса может изменить имя без установщика, поскольку у пользователя есть указатель на переменную кучи.
Я подумал об этом решении:

Код: Выделить всё

char* getName(){
char* otherName;
otherName = new char[10];
strcpy(otherName, name);
return otherName;
}
Но теперь, поскольку функция создает переменную кучи, пользователь может забыть удалить переменную кучи, и это будет мусор. Вот почему эта реализация не кажется правильным способом реализации функции получения и для этого члена.
Как мне ее реализовать?

Подробнее здесь: https://stackoverflow.com/questions/784 ... r-variable

Вернуться в «C++»