Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Delphi 5 -> C++Builder 6 [Win2k]


onix ©   (2004-08-19 08:37:00) 

Доброго всем дня уважаемые программисты!
Подскажите пожалуйста как справиться с проблеммой.
Необходимо перетащить компонент написанный для Д5 в С++6. Появилась проблема со строковыми переменными. Например, функция возвращает строку.
function   GetID(ItemNum: Integer): String;

Как тоже самое будет выглядеть на С++ ?

И как после использовать ее? В делфи пишем:
s := ComboBox.GetID(5);
А на С++ 6 ???

Заранее благодарю за помощь.


афвуд   (2004-08-19 13:26:00) [1]

Помоему __fastcall это когда первые три параметра передаются функции через регистры процессора.
Соответсвует вроде Дельфийскому register если не ошибаюсь.


wicked   (2004-08-19 13:11:00) [2]


> __fastcall это директива для оптимизации исполняемого кода,
> т.н. функция быстрого вызова. Не работает для функций с
> переменным числом параметров.

с подчеркнутым согласен...
а вообще это - calling conventions - соглашения о передаче и порядке передачи параметров в функцию и возврата результата из неё... о них неплохо в справке написано... справка может быть как для делфи, так и для билдера....
поскольку fastcall является стандартным для делфи, он в большинстве случаев опускается.... в с++ всё немного не так, в основном из-за отсутствия модульности как таковой... поэтому там его писать очень даже желательно... но это отдельный разговор.... ;)


serg128   (2004-08-19 13:00:00) [3]

__fastcall это директива для оптимизации исполняемого кода, т.н. функция быстрого вызова. Не работает для функций с переменным числом параметров.


onix   (2004-08-19 12:56:00) [4]

wicked ©
Не мог бы ты пояснить, что означает строка __fastcall.
К сожалению не все понятно в справке. Осваиваю С++Builder только с сегодняшнего утра.


wicked   (2004-08-19 11:47:00) [5]


> function   GetID(ItemNum: Integer): String;

AnsiString __fastcall GetID(int ItemNum)

использовать:
s = ComboBox->GetID(5);

ЗЫ тоже мне проблема... :)


Наверх

Титульная страница Поиск, карта сайта Написать письмо