1,demo/adp/breifcase例子用,其use中引用了DB, ADODB, Grids, DBGrids, ExtCtrls,它是标准单元吗?我好象没有看到这些单元文件过。
如果不是,那在这个工程我也没看到别的窗体呀?
2,interface中use引用的单元跟implementation中use引用的单元有什么区别?

解决方案 »

  1.   

    1。DB, ADODB, Grids, DBGrids, ExtCtrls这些单元都是DELPHI定义的一些VCL控件单元,如果要查看这些单元,可以用鼠标点击到相关单元以后,再选择“FIND DECLARATION”就可以了
    2。interface和implementation 中use相关单元,在效果上没有什么很大的区别,但是,implementation是一般引用户自义单元,而interface是对系统接口进行引用,也就相当于一个project 中的全局引用,所以当两个单元在interface中相互声明时,delphi将报错
      

  2.   

    1.是因为使用这些单元的控件delphi自动加入的。
    2.范围不同如果在implementation中use了unit2,unit2中有一个class--class1,这个时候在你unit的借口部分就无法使用class1。
      

  3.   

    1.都是标准单元,单元文件在Delphi下的Source目录中2.接口部分中单元引用和实现部分中单元引用没有任何区别。但要注意不要循环引用,否则会让编译器累死的(例如,两个单元文件,你在A单元的接口部分引用了B单元,那么如果B单元要引用A单元,则不能在B单元的接口部分进行引用,而是要在实现部分进行对A单元的引用!)
      

  4.   

    那是delphi自动调用的
    呵呵
    好好看看书把
      

  5.   

    1.是标准单元
    2.interface下的use是整个单元文件可访问的
    而implementation是实现部分才可以访问的
      

  6.   

    如果有有两个单元unit1,unit2,如果要相互引用的话只能是一个在interface引用对方,一个在implementation引用对方,如查都在同一个地方引用对方会产生循环引用,这就是系统报错的原因