函数返回值类型是Variant,实际上是个已知长度的Array of Double的数组 ,应该怎么办? RT 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 VAR RePointer:Pointer; measValues1:array of double;begin setlength(measValues1,长度); ReValue:=函数的调用; RePointer := VarArrayLock(ReValue); CopyMemory(@measValues1[0], RePointer, Sizeof(double) * 长度); VarArrayUnlock(ReValue);.....end; 意思是:我设置了个Variant的变量(A)来获取函数的返回值:A的值最后为Variant array of double,我又查看了下函数说明,说明上说是返回值是个长度固定的double的数组。我先试试2楼的先 uses Typesvar dd:TDoubleDynArray; v:Variant;begin v := VarArrayCreate([0,固定长度],varDouble); DynArrayFromVariant(Pointer(dd),v,TypeInfo(TDoubleDynArray)); ... // 对 dd 直接操作end; fastreport 4.7.5 full for delphi 2009如何安装,安装成功的给讲一下安装步骤,谢谢! 痛苦,多线程创建不出来,总是出错,高手是不是在忙?在线等 取磁盘文件的问题! 一个关于SPCOMM编写程序的问题 座标问题 一语句:write(F_err,#10); 中#10什么含义,谢了! 使用delphi开发传真收发,谁试过一把? 報表制做問題?小弟一定高分答謝!!! [求助]delphi 对象占用的内存大小 关于网络文件传输 delphi+mapx 建项,请给些建议 怎么比较查询结果是否全部相同?
VAR
RePointer:Pointer;
measValues1:array of double;
begin
setlength(measValues1,长度);
ReValue:=函数的调用;
RePointer := VarArrayLock(ReValue);
CopyMemory(@measValues1[0], RePointer, Sizeof(double) * 长度);
VarArrayUnlock(ReValue);
.....
end;
A的值最后为Variant array of double,我又查看了下函数说明,说明上说是返回值是个长度固定的double的数组。
我先试试2楼的先
uses Typesvar
dd:TDoubleDynArray;
v:Variant;
begin
v := VarArrayCreate([0,固定长度],varDouble);
DynArrayFromVariant(Pointer(dd),v,TypeInfo(TDoubleDynArray));
... // 对 dd 直接操作
end;