Re[4]: const в аргументах методов
От: dead0k  
Дата: 04.04.16 10:50
Оценка:
Здравствуйте, tstalker, Вы писали:

T>Бро, я же писал тебе выше: это норма.

T>Ничего здесь опасного нет.
T>Вот навскидку простенький пример:

BoxOfTNT * box = new BoxOfTNT();
TNT & stick (box_of_TNT->choose_one_stick_of_TNT());
delete box;
stick.prepare_to_use(); // <- BOOM

Оно, конечно, сам-себе буратино, но факт остается фактом — возвращать по значению — безопасней.
ps/
И да, указатель не является необходимым условием. Можено передать ссылку на шашку в конструктор другого класса, экземпляр которого будет возвращен из функции по значению, при этом, естествено, ящик и шашка, на которую есть ссылка, будут разрушены по выходу из этой функции.
Отредактировано 04.04.2016 10:56 dead0k . Предыдущая версия . Еще …
Отредактировано 04.04.2016 10:55 dead0k . Предыдущая версия .
Отредактировано 04.04.2016 10:53 dead0k . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.