Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2009.06.21;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.009 c
15-1239559328
AlexDan
2009-04-12 22:02
2009.06.21
Массовая рассылка.


2-1241354318
oleg_teacher
2009-05-03 16:38
2009.06.21
Как узнать количество дочерних узлов в дерева?


2-1240937555
Андрей (начинающий)
2009-04-28 20:52
2009.06.21
как заставить мигать иконку


15-1239374642
Igorek
2009-04-10 18:44
2009.06.21
Многомодульный клиент


15-1239929241
AIRDIGER
2009-04-17 04:47
2009.06.21
Пчему падает приложение при вызове BinToHex()





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский