zoukankan      html  css  js  c++  java
  • 在COM/DCOM中如何将数组作为函数返回的类型传递

    在进程内自动化服务器中定义一个函数方法,需要在函数返回时,返回多个值,这就需要采
    用数组的类型,比如,我定义了一个方法:
    function Calculate(inputtime: Integer): PSafeArray; safecall;
    需要返回一个数组,如何实现呢?是否采用safearray类型呢?
    在定义参数时采用的是safearray类型,怎么实现呢?


    参考D5开发人员指南 23章, 交换2进制数据


    用Variant,如:
    function Calculate(inputtime: Integer): OleVariant; safecall;
    begin
    Result := VarArrayCreate([0,2], VarOleStr);//三个元素的可变数组
    Result[0] := UserNo;//用户编号,数字型
    Result[1] := UserName;//用户名称,字符型
    Result[2] := FireDate;//入职日期,日期时间型
    end;
    调用该接口的程序,可以先判断返回值是不是可变数组(用VarIsArray),再反过来赋值就行了,类型会自动转换的。

    来源:http://www.delphibbs.com/delphibbs/dispq.asp?lid=1518451

  • 相关阅读:
    内部类
    抽象类与接口
    多态
    继承
    封装
    创建对象的内存分析
    构造器
    面向对象 类与对象
    uniapp跳转
    uniapp-组件引用错误,仅支持 import 方式引入组件
  • 原文地址:https://www.cnblogs.com/railgunman/p/1888659.html
Copyright © 2011-2022 走看看