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

Вниз

Borland Pascal   Найти похожие ветки 

 
ArtemESC ©   (2006-03-05 20:23) [0]

Можно ли в сабже возвращать запись функцией?


 
Vendict ©   (2006-03-05 20:25) [1]

Такая возможность по-моему появилась только в Delphi7.


 
ArtemESC ©   (2006-03-05 20:27) [2]

Vendict ©   (05.03.06 20:25) [1]
Что-же делать не подскажите? С указателями
      очень заморочно- сначала создавать, потом удалять..


 
wicked ©   (2006-03-05 20:32) [3]

возвращать через var параметр....


 
ArtemESC ©   (2006-03-05 20:40) [4]

wicked ©   (05.03.06 20:32) [3]
Не очень эффективно...


 
wicked ©   (2006-03-05 20:47) [5]

> ArtemESC ©   (05.03.06 20:40) [4]
> Не очень эффективно...
учи матчасть - var параметры - это ссылка на актуальную переменную.... эффективней только регистровый доступ....
или ты путаешь эффективность с (сомнительной) легкостью написания?...


 
GuAV ©   (2006-03-05 22:49) [6]


> ArtemESC ©   (05.03.06 20:40) [4]

> Не очень эффективно...


Хt, а как ты думаешь, как в Delphi реализовано возвращение записи как результат функции ? ;-)


 
Lamer@fools.ua ©   (2006-03-05 23:46) [7]

>Такая возможность по-моему появилась только в Delphi7.

И как только люди до седьмой версии Delphi структуры/записи возвращали как результат функции, одному Торвальдсу с Гейтсом известно.


 
Marser ©   (2006-03-06 00:08) [8]

> [1] Vendict ©   (05.03.06 20:25)
> Такая возможность по-моему появилась только в Delphi7.

Не знал... Моя D6 тоже...


 
jack128 ©   (2006-03-06 00:14) [9]

Vendict ©   (05.03.06 20:25) [1]
Такая возможность по-моему появилась только в Delphi7.

ну это ты загнул, конечно. раньше такая возможность появилась, значительно раньше.
wicked ©   (05.03.06 20:47) [5]
с (сомнительной) легкостью написания?...

В чем приемущество var параметра перед результатом?


 
TStas ©   (2006-03-06 00:39) [10]

Какиее-то паскали возвращают, но они юниксовые. ТОт, колторывй был у меня, я его стер и номер не помню не мог возвращать структуру


 
Германн ©   (2006-03-06 01:50) [11]


> ArtemESC ©   (05.03.06 20:23)  
>
> Можно ли в сабже возвращать запись функцией?
>


> ArtemESC ©   (05.03.06 20:27) [2]
>
> Vendict ©   (05.03.06 20:25) [1]
> Что-же делать не подскажите? С указателями
>       очень заморочно- сначала создавать, потом удалять.
> .


Имхо, следущим шагом будет жалоба на то, что приходится нажимать на клавиши. А потом и на кнопки мышки. :(((


 
Defunct ©   (2006-03-06 02:48) [12]

> ArtemESC ©   (05.03.06 20:27) [2]
> Что-же делать не подскажите? С указателями
>       очень заморочно- сначала создавать, потом удалять.


Чем заморочно-то?

type PMyRec = ^TMyRec;
      TMyRec = record
         zz : string[10];
         i : integer;
      end;

function Hello: PMyRec;
var
  MyRecPtr : PMyRec;
begin
  New( MyRecPtr );
  MyRecPtr^.zz := "hello";
  MyRecPtr^.i := 10;
  Hello := MyRecPtr;
end;

var
  R : TMyRec;
  RPtr : PMyRec;
begin
  RPtr := Hello;
  R := RPtr^;
  Dispose( RPtr );
end.


var параметром процедуры будет эффективнее


 
wicked ©   (2006-03-06 10:43) [13]

> jack128 ©   (06.03.06 00:14) [9]
> В чем приемущество var параметра перед результатом?

преимущество только в том, что мы можем как отдать данные в процедуру/функцию, так и получить из неё.... механизм давно и четко описан.... с возвратом структур компилятор уже должен обладать некторым интеллектом для того, чтобы локальную переменную отдаваемой в результате структуры выносить в нужное место и правильно инициализировать.....
плюс, скорей всего получим бинарную несовместимость таких функций с функциями, написанными на других языках - там оно может быть по другому....



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

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

Наверх




Память: 0.5 MB
Время: 0.038 c
2-1141706207
trych
2006-03-07 07:36
2006.03.26
дата


2-1142269570
alone
2006-03-13 20:06
2006.03.26
Система


10-1115402391
Chattr
2005-05-06 21:59
2006.03.26
Объединение ячеек ввод формул в TExcelApplication


2-1141714608
dera
2006-03-07 09:56
2006.03.26
Как select ом выбрать уникальные (неповторяющиеся записи)?


3-1138801962
DelphiFan
2006-02-01 16:52
2006.03.26
Фильтрация в TTable по полю ftDateTime