呵呵,我不清楚。什么情况下类需要创建后使用类,什么时候不需要创建就可直接使用类呢? 
VAR  MYCL : MYCLASS;
****************
MYCL := MYCLASS.CREATE小弟还有一个问题就是程序UINT单元中INTERFACE下的USES 跟implementation下的USES
调用有什么区别吗,好象包含类的单元必须放在顶部调用才行,而只是我要调用的窗体啊,全局变量单元啊只用放在IMPLEMENTATION下USES就可以了。最后想说一下,用DELPHI开发应用程序真快啊

解决方案 »

  1.   

    类怎么能创建呢?是创建对象,
    VAR  MYCL : MYCLASS;
    ****************
    MYCL := MYCLASS.CREATE
    这里的Create是构造函数,你可以理解为特殊的类方法,所以能直接调用来创建类实例。关于Use
    在implementation部分声明的单元引用只对本单元是公共的,可见的,其他单元即使应用该单元,也不能访问它们,这样对数据实现了良好的封装。
    ///////////////////////////////////////////////////////
    一般情况下,interface部分放系统自带的单元,implementation部分放用户自己写的单元
      

  2.   

    用DELPHI开发应用程序真快啊!INTERFACE下的USES中包含在interface中所使用的类型的单元,
    如interface中有
     classA= class(TForm),
    那么interface部分必须usesForms单元。同样implementation下的USES包含在implementation中所用到的(除interface的uses中已经引用过的以外的)单元。什么情况下类需要创建后使用类,什么时候不需要创建就可直接使用类呢? 
    (理解你所说的类实际上对象)
    任何情况下都是。除非是使用类方法
      

  3.   

    构造和析构函数只能用类来调用的,因为妮就是要用他们来创建活释放类的实例。
    INTERFACE下的USES 一般是调用系统预定义的单元,调用窗体在IMPLEMENTATION下USES就可以了,而且只有在IMPLEMENTATION下才能相互调用,即A USES B 同时 B USES A
      

  4.   

    使用 calss关键字,可以建立类似c++中static的类成员!这些是可以不用创建实例就可以使用的!
      

  5.   

    多谢各位的指教 获意匪浅 我会慢慢体会其中包含的思想 我初学类,呵呵,结果一用就上瘾了,而且我用类的BT,现在把所有组件的事件都写到类里面去了
    然后让VCL.EVENT := MYCLASS.EVENT  比如treeview1.onchange := myclass.onchange
    结果现在主窗口上一行代码都没有了 就一个INITIALIZE(ALLTCOMPENT) 嘿嘿 比较BT
    不过不知道这样做好不好
      

  6.   

    juliens(星星球愛思纯^_^) 如果你的类中有类方法的话,那么不用创建类实例就能使用该方法,但是类方法中不能使用类成员,那样会出错!类成员是指的什么 是类单元中的定义在类之外的过程和函数吗?
      

  7.   

    DELPHI的类里面的方法都是被声明成静态的吧 否则应该不能直接调用