解决方案 »

  1.   

    var aa:ITest ;
    你的aa总得有个东西来赋值才能调用吧
      

  2.   

    这是实现类 Un_Class单元。aa怎么赋值?
      

  3.   

      aa :=  TTest.create as  ITest ;
      

  4.   

     aa :=  TTest.create as  ITest ;  试了下加上这句再调用接口函数正常 
    有个问题  得要引用实现类单元   那怎么实现实现类单元的函数是怎么实现的别人是看不到的呢?
      

  5.   

    你在接口单元写一个函数数啊如  getITest:itest  
    begin
    result:= TTest.create as  ITest ;
    end;
      

  6.   

    接口必须要实现别人才能使用,你自己可以在内部做一个接口工厂比如叫InterfaceFactory,然后其他的接口都注册到这个工厂保存起来,然后可以通过此工厂来获得接口,而也可以不将你的实现暴露给别人,工厂通过QueryInterface来获得这个接口