Wiki-kopiopeilipalvelin

Tämä on pascal.chatin wikin peilipalvelin. Muokkaus, historia ja kirjautuminen ovat siellä.

Inherited/fi

Deutsch · English · Français · Suomi · Русский

Ylikirjoitetussa virtuaalimetodissa on usein tarpeen kutsua virtuaalimenetelmän vanhemman luokan toteutusta. Tämä voidaan tehdä inherited varatulla sanalla. Samoin inherited-avainsanaa voidaan käyttää missä tahansa vanhemman luokan metodissa.

Tämä tapaus on yksinkertaisin:

pascal
Type  
  TMyClass = Class(TComponent)  
    Constructor Create(AOwner : TComponent); override;  
  end; 

Constructor TMyClass.Create(AOwner : TComponent);  
begin  
  Inherited;  
  // tehdään lisää asioita  
end;

Rakentajien ja purkajien tapaukset

Rakentaja constructor, esimerkki 1 :

pascal
  ...
  TTest.Create;
  begin
    inherited; // Aina  rakentajien alussa. Aloittaa vanhemman luokan rakentamisen 
    ...
  end;

Rakentaja eli constructor esimerkki 2 :

pascal
  ...
  TTest.Create(...);
  begin
    Inherited Create(...); // Aina  rakentajien alussa. Aloittaa vanhemman luokan rakentamisen 
    ...
  end;
  ...

Purkaja destructor esimerkki 3 :

pascal
  TTest.Destroy;
  begin
    ...
    inherited;  // Aina purkajan lopussa ja aloittaa vanhemman luokan purkajan
  end;
  ...

From the Free Pascal wiki, page "Inherited/fi", as it stood on 2022-08-06 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Versio 1, viimeksi muokannut WikiArchive .