Delphi-Version: XE
optionale Parameter mit object-type?
Hallo,
ich habe da ein kleines Object aber keine Klasse deklariert:
Code:
Die Interpreter-Function ist sehr umfangreich.
type TScript = object
private line:word; state:TStatus; public script:TStringList; error:string; function Init(scriptfile:string):boolean; end; function Interpreter(cmd:string; Modus:TModus; inScript:TScript):TStatus; Jetzt habe ich manchmal den Fall, daß ich die Interpreter-Function auch ohne "inScript" aufrufen möchte. Ich kann den Parameter aber nicht einfach auf NIL setzen, das läßt der Compiler nicht zu. Ich möchte jedoch nicht nochmal die fast gleiche, umfangreiche Function schreiben und mit OVERLOAD versehen (dann alternativ ohne "inScript"). Wie kann ich auf einfache Weise die Funktion deklarieren, daß der "inScript"-Parameter optional ist? :?: |
AW: optionale Parameter mit object-type?
Zitat:
wie wärs mit nem Overload der dann einfach ein leeres TScript übergibt? Und wozu genau ein object? :D Freundliche Grüsse |
AW: optionale Parameter mit object-type?
Hmm..
wie währe es mit folgender Deklaration
Delphi-Quellcode:
function Interpreter(cmd:string; Modus:TModus; inScript:TScript = nil):TStatus;
Mit dem ' = nil' kann das Object doch einfach beim Aufruf weggelassen werden. Musst dann nur in der implementation der Funktion überall vor Verwendung von inScript auf Assigned prüfen.. |
AW: optionale Parameter mit object-type?
Hallo,
warum lässt der Compiler das nicht zu? Zeig doch mal Deinen Code. |
AW: optionale Parameter mit object-type?
Zitat:
|
AW: optionale Parameter mit object-type?
Zitat:
|
AW: optionale Parameter mit object-type?
Bist du sicher, daß das wirklich so sein soll
Delphi-Quellcode:
und nich so
type TScript = object
Delphi-Quellcode:
?
type TScript = class
In dem Fall würde mich schon der Grund interessieren. |
AW: optionale Parameter mit object-type?
Zitat:
Hab in den ganzen Jahren noch nie object verwendet wüsste auch nicht wozu. :lol: |
AW: optionale Parameter mit object-type?
http://docwiki.embarcadero.com/RADStudio/Berlin/en/Classes_and_Objects_%28Delphi%29#Object_Types"]http://docwiki.embarcadero.com/RADStudio/Berlin/en/Classes_and_Objects_%28Delphi%29#Object_Types"]http://docwiki.embarcadero.com/RADStudio/Berlin/en/Classes_and_Objects_%28Delphi%29#Object_Types
Zitat:
Rollo |
AW: optionale Parameter mit object-type?
das geht wenn Du einen Pointertyp für das Object erzeugst.
Delphi-Quellcode:
und diesen in der function als parameter verwendest. Aber am besten ist es sicher eine Klasse zu verwenden.
PmyObject = ^TmyObject;
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz