Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Использование Result как локальной переменной в функции


learner ©   (2006-08-13 21:36:00) 

Часто встречаю такую реализацию функции:
function Test1: TMyType;
var
Raram: TMyType;
begin
// Много преобразований с Param
Result:=Param;
end;
Чем она лучше следущей ?
function Test2: TMyType;
begin
// Много преобразований с Result
end;


Anatoly Podgoretsky   (2006-08-13 22:22:00) [1]

Не говоря уже о том, что тип может оказаться сложным и проблемы с копированием гарантированы.


tesseract   (2006-08-13 22:17:00) [2]

> [3] Anatoly Podgoretsky ©   (13.08.06 22:15)


Я тоже. Переменная всё-рано есть, зачем ещё одну заводить?


Anatoly Podgoretsky   (2006-08-13 22:15:00) [3]

Абсолютно одинаково, кроме адресации и лишнего присваивания. Я предпочту второй вариант.


learner   (2006-08-13 21:57:00) [4]

Спасибо


begin...end   (2006-08-13 21:50:00) [5]

Ничем не лучше. Но она может оказаться хуже, если в строке Result := Param будет происходить реальное копирование содержимого локальной переменной в результат.


Наверх

Титульная страница Поиск, карта сайта Написать письмо