2013-08-07 2 views
1

Delphi синтаксис:Как вызвать функцию "Move" в C++ Builder 6

procedure Move(const Source; var Dest; Count: Integer); 

C++ синтаксис:

extern PACKAGE void __fastcall Move(const void *Source, void *Dest, int Count); 

Я использовал функции Move в Delphi давным-давно,

недавно Я хочу называть его в C++ Builder 6,

Я написал его так же, как и в Delphi,

Внешний вид ошибки -> "Синтаксис выражения".

Доза любой знает, как назвать это?

или есть другие функции, подобные ему?

ответ

1
BYTE src[] = "Source Data"; 
BYTE dst[11]; 
Move(src, dst, sizeof(dst)); 

Лучше использовать memmove в C++:

memmove(dst, src, sizeof(dst)); 
+0

Оказывается, что Move и memmove все функционально работать в моей программе, это было что-то другое пошло не так в моем коде (я решил). Но мне любопытно узнать о различии между этими двумя функциями, не могли бы вы объяснить? – APU

+0

Первая функция является членом библиотеки времени исполнения delphi (pascal), а вторая функция является членом стандартной библиотеки C++. вы можете использовать оба кода, и они не отличаются по производительности. Рекомендуется использовать функции std C++ для переносимого кода (компилируется в GCC или VC++, ...). –