![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Litkevich Yuriy |
![]()
Сообщение
#1
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
Переменные созданные внутри функций живут пока мы невышли из фукции, так вроде.
Видел такую вещь:
т.е. функция возвращает указатель на масив, который в ней же создан. Но покинув функцию масив прекратит существование и указатель будет показывать в кучу проги, например, может показывать в неосмысленное место. Я правильно понимаю, т.е. это косячек програмиста, или как-то это иначе работает применительно просто к C++? |
|
|
![]() |
archimed7592 |
![]()
Сообщение
#2
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 127 Регистрация: 27.12.2007 Из: Moscow Пользователь №: 56 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Litkevich Yuriy,
А было так, что функция сама формировала масив и возвращала указатель на него. С точки зрения проектирования хорошего(удобного) интерфейса было всё правильно(кроме реализации).Я бы оставил как есть, за исключением того, что возвращал бы умный указатель(какой именно - зависит от специфики ф-ции) на динамически созданный объект(из соображений эффективности можно воспользоваться пулом для таких маленьких объектов). |
|
|
![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 21.6.2025, 13:41 |