我觉得类是不能返回的。返回对象才有可能。function GetTest:olevariant;或是返回IUnknown接口

解决方案 »

  1.   

    to  black_fox(black_fox) 
    我就是想返回一个类的实例。。
    function GetTest:TTest;
    var
      a:TTest;
    begin
      a:=TTest.Create;
      result:=a;
    end;
    如果按照你的写法,是不行的。。还有别的办法吗?
      

  2.   

    类是可以返回的吗?
    变量可以耶,
    类的示例就是等价于变量耶!
    simple?yes。
      

  3.   

    你是怎么试出来不的啊。IDL是如何写的。。我个人觉得这个对象不应该在里面创建哦
      

  4.   

    to Fzgta(蝈蝈)
    先谢谢你的回复。
    不知道你试过没有,反正我没试成功。因为在Type Libary里选函数返回值时没有我想要的TTest类型。
      

  5.   

    to  black_fox(black_fox)
    我是用Type Libary来添加函数的。在选返回类型时不能填TTest。
      

  6.   

    to wanwangzhiwang(不编程行吗?) 
    你说得太对了。我就是想返回一个类实例。。怎么做能说一下吗?
      

  7.   

    function GetTest:TTest;
    其中TTest是一个自定的类。这样应该可以,只不过你需要在调用的地方重新定义一下TTest这个类(如果不在一个应用程序里)也可以这样,在把类实例作为参数function GetTest(var test:TTest) :boolean;当程序执行结束时test并没有释放掉,你可以在下一步程序里继续使用test就像这样:
    var
      test1:ttest;
    beign
       ……
       GetTest(test1);
       然后使用test1……