Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.03;
Скачать: CL | DM;

Вниз

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

 
learner ©   (2006-08-13 21:36) [0]

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


 
begin...end ©   (2006-08-13 21:50) [1]

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


 
learner ©   (2006-08-13 21:57) [2]

Спасибо


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

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


 
tesseract ©   (2006-08-13 22:17) [4]

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


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


 
Anatoly Podgoretsky ©   (2006-08-13 22:22) [5]

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



Страницы: 1 вся ветка

Текущий архив: 2006.09.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.039 c
15-1155231251
Мазут Береговой
2006-08-10 21:34
2006.09.03
Это хорошо, что Microsoft


2-1155419884
ronyn
2006-08-13 01:58
2006.09.03
ACSII получить номер символа


15-1155210605
Opilki_Inside
2006-08-10 15:50
2006.09.03
Статическая переменная


1-1153407048
Lexer
2006-07-20 18:50
2006.09.03
Получение e-mail пользователя из Active Directory


4-1147238557
KygECHuK
2006-05-10 09:22
2006.09.03
Проблемы со снятием ловушки