今天使用BCB的Format处理数据,参数转换类型总是提示错误,于是网上搜了一下,使用ARRAYOFCONST转换,这个宏的双括号(())的使用方式,让人眼前一亮,所以记录一下,方便以后翻阅:
网上搜罗一下,BCB和Delphi 中的Format作用是一样的,但是不同的是参数。由于 Delphi 支持“开参数”和动态数组特性(没用过不太了解),所以 Delphi 中的 Format 只有两个参数,其中后一个参数就是一个动态开参数常数数组。
extern PACKAGE AnsiString __fastcall Format(const AnsiString Format, const System::TVarRec* Args, const int Args_Size);
BCB 中的 Format 函数其第一个参数与 Delphi 的 Format 是类似的(一个格式化描述字符串),而后面有两个参数,第二个参数是一个 TVarRec 类型的数组指针,第三个参数是这个数组的最后一个元素的索引值。
在BCB中使用double或者int转换的时候就遇到障碍了,因为无法直接转换,需要BCB中的这