Как написать геттер, который обращается к переменной-члену, выделенной в куче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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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