如果你要先执行父类该函数的代码而子类该函数的代码写在inherited后否则
写在inherited前面.至于写游戏,用继承当然一般是看写多个游戏一个系统的
还是一个游戏一个系统,当多个游戏一个系统最好是建立父窗体每个游戏都从
该窗体继承,而公用代码就写在父窗体中.至于一个游戏一个系统那就要根据
不同的能来建立父类,当然要考虑到游戏角色的增加.我建议你买本<<设计模式>>
这本书看看,可能对你大有帮助,其中就有游戏实际范例

解决方案 »

  1.   

    inherited含义是继承,是为了实现OOP中的“实现继承”,它表明紧随其后的标识符是其基类的成员,这个标识符可能是方法,也可能是属性。如:
    Result := inherited Items[Index];//Delphi源代码中的TObjectList.GetItem中的代码
    emao_mhw的回复中好象有些概念不清的地方(也许是我没有理解他的话),OOP中的继承关系和窗体的父子关系是不同的。OOP也主要是在一个系统中应用的,一个好的面向对象的系统的代码可以很容易地被其它系统重用是另一回事,首先是这个系统是不是面向对象的。
    关于游戏编写,举个例子吧,如果是“俄罗斯方块”,你可以考虑有一个TBlock的抽象类,它提供一些抽象函数,分别用于方块的旋转、移动、显示、是否可以移动的判断等。然后从它继承各种不同形状的Block类,在这些类中真正实现基类的抽象函数。这样,当你增加新的形状时,只需要增加一个新类,不需要修改其它地方。
    关于OOP方面的书,emao_mhw所说的《设计模式》是一本很不错的书,不过要求读者应对面向对象的编程很熟悉才行。一般讲OOP的书很少用Delphi作为例子的,建议你学一下C++,然后看一下《Thinking in C++》这本书。如果以上两本书都看懂了,建议学一下UML(统一建模语言)和RUP(Rational 统一过程)。     ____     ____
         \ p \   / g /
          \ l \_/ n /
           \ a   o /
            \ i s /
             \ n /
              \_/