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

Вниз

Аналог в Делфи операции из Си   Найти похожие ветки 

 
dvm ©   (2003-01-26 16:09) [0]

Подскажите, может есть более короткий способ создать в Delphi аналог операции из си:
myfunction(a?b:c)
а то в Делфи, что-то короче чем:

if a then temp:=b else temp:=b
MyFunction(temp);

не получается


 
Романов Р.В. ©   (2003-01-26 16:21) [1]

if a then MyFunction(b) else MyFunction(с);

или

MyFunction(IFA(a, b, c));

где

function IFA(a, b, c): TypeB;
begin
if a then Result:=b else Result:=c;
end;


 
dvm ©   (2003-01-26 16:29) [2]


> function IFA(a, b, c): TypeB;
> begin
> if a then Result:=b else Result:=c;
> end;


Да, но она не универсальна. Вот если бы тип возвращаемого функцией результата выбирался исходя из типов a, b, c.



 
asmith   (2003-01-26 16:55) [3]

Функцмя IfThen - появилась в D6.


 
Anatoly Podgoretsky ©   (2003-01-26 17:24) [4]


//*****************
//* Immidiate IF *
//*****************
function IIF(Expr,TrueRet,FalseRet:Variant) : Variant;
begin
if Expr then Result := TrueRet else Result := FalseRet;
end;


Вот эта универсальная, работает как минимум начиная с Д2


 
Романов Р.В. ©   (2003-01-26 17:35) [5]

Интересно как сделана IfThen?


 
Serious Sam   (2003-01-26 21:49) [6]

>короче ...не получается

Да, потому, что object pascal язык такой. Квадратно-гнездовой.
(Прошу ногами не пинать)


 
jack128 ©   (2003-01-26 22:56) [7]

2 Serious Sam Зачем ногами, мы сразу ломом по балде и нет проблем

2 dvm паскаль вообще не изабилует сокращениями, превыкай






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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
14-5232
hatchy
2003-01-13 18:14
2003.02.03
Проблемы с windows98se и kernel32.dll


14-5217
Ketmar
2003-01-15 20:13
2003.02.03
я вот лисп просил когда-то - не дали. вредины. сделаю схему-тоже


3-4789
AndreyP
2003-01-16 08:00
2003.02.03
Работа с БД Clarion5 - как достать данные из *.tps


7-5275
dkDimon
2002-11-20 16:02
2003.02.03
Device Manager


8-5071
hedgehoge
2002-10-19 10:25
2003.02.03
ListVeiw - задний фон