我很困惑,use语句放在单元的interface部分和implementation部分有什么不同,查了很多资料也没有完全搞清楚,郁闷!

解决方案 »

  1.   

    好久不用delphi了
    我印象中
    放在implementation的可以两个Unit互相引用
    比如
    Unit A的implementation里Use B
    Unit B的implementation里Use A
    这样是可以的
    但在interface是不可以的
      

  2.   

    在implementation部分声明的单元引用只对本单元是公共的,可见的,其他单元即使应用该单元,也不能访问它们,这样对数据实现了良好的封装。
    ///////////////////////////////////////////////////////
    一般情况下,interface部分放系统自带的单元,implementation部分放用户自己写的单元
      

  3.   

    可delphi6开发人员指南上写,在UNIT A单元的interface里use B,而在UNIT B单元的implementation里use A ,也能实现相互调用的么??而且它推荐这么做!
      

  4.   

    另外,dulei115()说“在implementation部分声明的单元引用只对本单元是公共的,可见的,其他单元即使应用该单元,也不能访问它们”具体是什么意思??
      

  5.   

    在implementation部分声明的函数、变量等只能在本单元内使用,不能由外部单元使用,所以对本单元来讲是公共的,对其它单元是不可见(不能访问)
    --------------
    在UNIT A单元的interface里use B,而在UNIT B单元的implementation里use A ,也能实现相互调用的么??而且它推荐这么做!
    如果都在interface部分写use 对方,会出现循环引用的编译错误,以上是为了防止循环引用
      

  6.   

    implementation 是调用
    interface 是引用