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

Вниз

delphi to builder   Найти похожие ветки 

 
пикассо   (2009-04-13 18:06) [0]

Всем доброго времени суток!
Помогите, пожалуйста, перевести:

type
 MyForm = class(TForm)
...

function MyFunc(var aStr: string): Boolean;
begin
 Result := False;
 with TMyForm.Create() do
   try
     if ShowModal = mrOk then
       Result := True;
     
   finally
     Free;
   end;
end;


 
boa_kaa ©   (2009-04-13 18:08) [1]

печатать
 MyForm = класс (TForm)
...

Функция MyFunc (Перем aStr: строка): булевы;
начинать
 Результат: = False;
 с TMyForm.Create () делать
   пытаться
     если ShowModal = mrOk затем
       Результат: = Правда;
     
   наконец,
     Свободная;
   конец;
конец;


 
пикассо   (2009-04-13 18:15) [2]


> boa_kaa ©   (13.04.09 18:08) [1]

и ведь не лень было...


 
пикассо   (2009-04-13 18:31) [3]

блин, ну какой аналог в С++ try..finally? И как переменную типа String передать по ссылке?


 
AndreyV ©   (2009-04-13 18:52) [4]

> [3] пикассо   (13.04.09 18:31)
> блин, ну какой аналог в С++ try..finally? И как переменную
> типа String передать по ссылке?

form.h

class TMyForm : public TForm
{
};

form.cpp
bool  MyFunc(AnsiString aStr)
{
 bool res = false;
 TMyForm *fm = new TMyForm(this/* например */);
 try
 {
//    if(fm->ShowModal() == mrOk)
//    {
//      res = true;
//    }
    res = fm->ShowModal() == mrOk;
 }
 __finally
 {
   delete fm;
 }
}


 
AndreyV ©   (2009-04-13 18:55) [5]

> [4] AndreyV ©   (13.04.09 18:52)
...
 __finally
 {
   delete fm;
 }
 return res;
}


 
пикассо   (2009-04-13 19:04) [6]


> AndreyV ©   (13.04.09 18:52) [4]


> AndreyV ©   (13.04.09 18:55) [5]

спасибо, а как мне вернуть значение переменной/ых из функции?


 
пикассо   (2009-04-13 19:07) [7]

нашел:)
bool func(Type& variable);


 
AndreyV ©   (2009-04-13 19:08) [8]

> [6] пикассо   (13.04.09 19:04)
> > AndreyV ©   (13.04.09 18:55) [5]
>
> спасибо, а как мне вернуть значение переменной/ых из функции?

Ну тогда
bool  MyFunc(AnsiString *aStr)
{
 ...
 *aStr = "asd";
 ...
}


 
clickmaker ©   (2009-04-13 19:14) [9]

> bool  MyFunc(AnsiString aStr)

static bool MyFunc(AnsiString aStr)


 
AndreyV ©   (2009-04-13 19:19) [10]

> [9] clickmaker ©   (13.04.09 19:14)
> > bool  MyFunc(AnsiString aStr)
>
> static bool MyFunc(AnsiString aStr)

А static зачем? MyFunc не член класса, а хоть бы и член.


 
Игорь Шевченко ©   (2009-04-13 19:23) [11]


> Помогите, пожалуйста, перевести:


Не помогу


 
пикассо   (2009-04-13 19:30) [12]


> Игорь Шевченко ©   (13.04.09 19:23) [11]

оригинально


 
clickmaker ©   (2009-04-13 20:09) [13]

> А static зачем? MyFunc не член класса

да, проглядел )


 
AndreyV ©   (2009-04-13 20:19) [14]

> [7] пикассо   (13.04.09 19:07)
> нашел:)
> bool func(Type& variable);

Указатель как-то понятнее.


 
wicked ©   (2009-04-13 23:13) [15]


> Указатель как-то понятнее.

ссылка физически - то же указатель, только разыменовывать не надо и null не передашь: компилятор по рукам даст


 
AndreyV ©   (2009-04-13 23:23) [16]

> [15] wicked ©   (13.04.09 23:13)
>
> > Указатель как-то понятнее.
>
> ссылка физически - то же указатель, только разыменовывать
> не надо и null не передашь: компилятор по рукам даст

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



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

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

Наверх




Память: 0.5 MB
Время: 0.017 c
4-1211184805
Barloggg
2008-05-19 12:13
2009.06.21
как отобрать у винды мышь?


2-1241429434
apic
2009-05-04 13:30
2009.06.21
rave


13-1120595885
vveird
2005-07-06 00:38
2009.06.21
Технология .NET


15-1236615034
Кто б сомневался
2009-03-09 19:10
2009.06.21
Музыка - жанры и стили


15-1239792220
Kerk
2009-04-15 14:43
2009.06.21
Оптимизация интерфейса пользователя