我现在在编一个程序,全局变量都声明单元文件unit1中的implementation,还有一些自定义过程如a1,a2,b1,b2等等(都未在interface接口中声明),这些过程都可能用到声明到的全局变量以及窗体form1有关属性和方法。我现在想把unit1分解成三个单元文件。unit1(含窗体文件)只包含a1,b1以及form1有关事件过程,unit2为全局变量声明,unit3为a2,b2等过程。如此这般,我只好把unit1中implementation声明的变量移入到unit2中interface。
请问:
1、我该把变量声明unit2单元文件uses到unit1中的implementation还是interface?
2、unit3单元文件又该uses到哪里?unit3单元文件的implementation和interface又该uses那些单元。a2,b2过程要用到unit1中的form1窗体对象。
3、我现在是把unit3单元文件uses到unit1中的implementation,把unit1单元文件uses到unit3中的interface。但我看到教科书上说如果这样的话程序结构不合理,请问我该如何做?或是你是怎样做的?谢谢。

解决方案 »

  1.   

    interface一般放一些系统级的单元文件,implementation处一般放自己程序里的单元。另外,在implementation处放还可以防止循环uses单元。
      

  2.   

    所以你的几个unit最好都放到implementation处。如果你让Delphi自己添加的话,也是放到implementation处的。
      

  3.   

    放到implementation处  先添加工程 Add To Project 然后再Use Unit
      

  4.   

    1、建议你加到implimentation处!
    感觉你都把三个单元成了一个链了,肯定是不行的。
    2、unit3单元文件的implementation只能uses unit1了,unit2单元文件的implementation能uses unit1,unit3