/Timer Codevi procedure TForm1.Timer1Timer(Sender: TObject); var resultat : string; begin //si CV n'est pas encore instancié, on passe... if Assigned(CV) then begin str(cv.incrementer:10:2, resultat); Memo.text:=resultat; end; end;
type TCompte = class //... end; TCodevi = class(TCompte) //... end;
var Compte: TCompte; Codevi: TCodevi;
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionunit Unit2; interface uses Classes; //Déclaration du Type compte type Tcompte = class private solde: double; Num_cpte: integer; nom: string; public //le contructeur sera surchargé par les descendants. //nous précisons donc la directive "Virtual" constructor create(n: integer; x: string);virtual; procedure crediter(m: double); procedure debiter(m: double); function solde_compte(): double; end; //Déclaration du type codevi Tcodevi = class(Tcompte) private num_cptecv: integer; //est-ce encore utile ? taux: integer; soldecv: double; public //surcharge le constructeur de la classe "mère" constructor create(n: integer; x: string);override; function incrementer(): double; end; implementation constructor Tcodevi.create(n: integer; x: string); begin //appel du constructeur hérité de la classe TCompte inherited Create(n, x); num_cptecv := n; soldecv := 50; taux := 3; end; constructor Tcompte.create(n: integer; x: string); begin //Appel du constructeur de la classe TObject inherited Create; Num_cpte := n; nom := x; solde := 0; end; procedure Tcompte.crediter(m: double); begin solde := solde + m; end; procedure Tcompte.debiter(m: double); begin solde := solde - m; end; function Tcompte.solde_compte(): double; begin Result := solde; end; function Tcodevi.incrementer(): double; begin soldecv := soldecv + 50; soldecv := soldecv * (1 + taux / 100); Result := soldecv; end; end.
procedure TForm1.Button1Click(Sender: TObject); begin compte:= compte.create (StrtoInt(Num_cpte.Text),Nom.text); codevi:= codevi.create (Strtoint(Num_cod.Text),Nom.Text); ShowMessage('Compté crée') end;
procedure TForm1.Button1Click(Sender: TObject); begin compte: = TCompte.create (StrtoInt(Num_cpte.Text),Nom.text); codevi:= TCodevi.create (Strtoint(Num_cod.Text),Nom.Text); ShowMessage('Compté crée') end;