Fórum overload; override; #319690
21/04/2006
0
Criei a class TRuda derivado do TPersistent
Ai funcionou perfeitamente só que ficou na lista tb o Create sem parametros que vem do TPersistent como faço para tirar ele, ser substituido com esses dois constructor ???
Tentei: [b:bb8346e566]constructor Create(Nomes: TStrings); overload; override;[/b:bb8346e566]
mas da erro: [b:bb8346e566]Cannot override a static method[/b:bb8346e566]
TRudaRecordDados = class(TPersistent) public constructor Create(Nomes: TStrings); overload; constructor Create(Nome: String); overload; end;
Ai funcionou perfeitamente só que ficou na lista tb o Create sem parametros que vem do TPersistent como faço para tirar ele, ser substituido com esses dois constructor ???
Tentei: [b:bb8346e566]constructor Create(Nomes: TStrings); overload; override;[/b:bb8346e566]
mas da erro: [b:bb8346e566]Cannot override a static method[/b:bb8346e566]
Rudá
Curtir tópico
+ 0
Responder
Posts
22/04/2006
Sremulador
se você estiver dando um override esta sobrescrevendo do seu ancestral, para isso você pode utilizar os paramentros ele se não utilize o inherited...
Responder
Gostei + 0
22/04/2006
Marco Salles
Ai funcionou perfeitamente só que ficou na lista tb o Create sem parametros que vem do TPersistent como faço para[b:d01880632b] tirar ele[/b:d01880632b], ser substituido com esses dois constructor ???
´[b:d01880632b]Tira-lo[/b:d01880632b]´ :?: :?: :?: , se ele existe na classe Pai , ira existir na classe filha.. Voce pode sobscreve-lo..
Como ja existe métodos com paramentros diferentas na classe Filha , voce esta usando corretamente a directiva [b:d01880632b]Overload [/b:d01880632b].. Pórtanto voce deve usa-la também para o método que voce quer sobscrever
Assim:
constructor create;overload;virtual;
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)