Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#12

AW: Konstruktor-Aufruf "Too many actual parameters" - warum?

  Alt 26. Jun 2024, 23:42
[add] OMG, einen vergessenen Tab gefunden und wo Firefox sich so Mühe gegeben hat das Geschriebene im Editor, trotz mehrfacher Abstürze, Neustarts und disableter Tabs zu merken ......... klick ich mal auf Senden
Falls noch was fehlt und ich es noch nicht geschrieben hab ... hab's eh vergessen[/add]

Das wusste ich nicht - ich dachte, das sei zulässig...
Nja, es ist möglich,
aber widerspricht den Grundsätzen der OOP.

Durch die Vererbung werden Dinge hinzugefügt, aber niemals nicht entfernt.

Ein TMemoryStream kann alles, was ein TStream kann,
also es macht keinen Unterschied, ob ich VariableAlsTMemoryStream.Write oder VariableAlsTStream.Write ausführe, solange da wirklich ein TMemoryStream drin steckt.



Delphi-Quellcode:
type
  TTest = class(TComponent)
  strict private
    procedure SetName(const NewName: TComponentName); override;
  strict protected
    property Tag;
  end;

procedure TForm4.FormCreate(Sender: TObject);
begin
  Tag := TTest.Create(Self).Tag;



  var Edit: TEdit;
  var Cont: TControl;

  Edit := TEdit.Create(Self);
  Cont := Edit;

  TLabel(Edit).Caption := ''; // Ja, Caption gibt es seit TControl, aber meistens ist es einfach nur im Protected versteckt.
  TLabel(Cont).Caption := '';
  Edit.Caption := ''; // [dcc32 Fehler] E2362 Auf protected-Symbol TControl.Caption kann nicht zugegriffen werden

  Edit.Text := '';
  Cont.Text := ''; // [dcc32 Fehler] E2362 Auf protected-Symbol TControl.Text kann nicht zugegriffen werden
end;
$2B or not $2B
  Mit Zitat antworten Zitat