类的继承,一个在VC中好像没有的问题。(50分)

  • 主题发起人 主题发起人 archy
  • 开始时间 开始时间
A

archy

Unregistered / Unconfirmed
GUEST, unregistred user!
Tmy= class
private
x:integer;
public
function Get_x():integer;
constructor Create;
end;

Tsub = class(Tmy)
public
constructor Create;
end;


constructor Tmy.Create;
begin
x:=8;
end;

procedure TForm1.FormShow(Sender: TObject);
var a:Tsub;
begin
a:=Tsub.Create;
caption:=(inttostr(a.Get_x))
a.Free;
end;

constructor Tsub.Create;
begin
inherited;//关键在于这一句,加了caption为8,不加为默认值0,在VC中不加(当然没有此语句)也是8
end;

哪位高手能指点一下呢?另:Delphi的书中讲类和继承的太少了,138元的就那么一点点,<Mastering Delphi 5>也不多。请推荐。
 
这是C++和object pascal的区别之一,嘿嘿嘿
让温柔一刀给你灌输灌输
 
inherited表示继承其父类的此过程,
不加的话,当然对x就没有付值了。

其实pascal的面向对象要比C++简单多了.
你可以看看<<Delphi5 开发员指南>>和<<Delphi2 程序设计大全>>
 
老兄,我也是看138的书啊,但这个小问题书上说的很明白的啊,是不是你看的太快了?
 
派生类中的方法可以通过在方法调用前面使用inherited关键字代替对象引用来调用它的基类的一个方法。
若省略方法名,则默认为与本方法名以及参数相同,否则则应像普通函数那样调用。
 
多人接受答案了。
 
后退
顶部