Einzelnen Beitrag anzeigen

pertzschc

Registriert seit: 29. Jul 2005
Ort: Leipzig
305 Beiträge
 
Delphi 10.4 Sydney
 
#12

Re: BoolToStr wirft Memcheck Exception.

  Alt 6. Aug 2008, 18:50
Zitat von RWarnecke:
Deine Proberty schreibt und liest doch den Wert fNumberWithZero, warum sollte es nicht funktionieren ?
Nein, die function ist eine in der Unit deklarierte globale Funktion. Sie bekommt als Argument ein Objekt, welches ein TestProject darstellt. Dieses Objekt hat public properties, an denen jeweils eine Set/Get-Methode hängt.
Diese Eigenschaften des Objektes werden dann in der Save-function als Werte in eine INI-Datei geschrieben. Daher ist kein Zugriff innerhalb der function auf private Eigenschaften des übergebenen Objektes möglich. Dann müsste ich die fAttribute public machen und auf Set/Get-Methoden der Properties verzichten. Das macht für mich keinen Sinn wenn ich hier kapseln möchte. Hilft diese Erklärung zum besseren Verstehen?

Delphi-Quellcode:
type
  TTestProject = class(TObject)
  private
    { Private declarations }
    fName: string; // name des projektes
    fNumberWithZero: boolean; // sollen nach dem prefix der nummernbereich mit nullen aufgefüllt werden?
    ...
    // methoden
    procedure Set_NumberWithZero(aNumberWithZero: boolean);
    function Get_NumberWithZero: boolean;
    ...
  public
    { Public declarations }
    // properties
    property Id: string read Get_IdStr;
    property Name: string read fName write fName;
    property NumberWithZero: boolean read Get_NumberWithZero write Set_NumberWithZero;
    ...
    // konstruktor etc...
    constructor Create; overload;
    destructor Destroy; override;
  end;
Gruß,
Christoph
  Mit Zitat antworten Zitat