![]() |
writeln modifizieren
Liebes Forum,
ich hab ein altes pascal7 programm ausgegraben und möchte die writeln fct. modifizieren. wie komm ich da dran? Gruß Stephan |
Re: writeln modifizieren
Probiers mal mit "LESEN". Ist ne Standard-Hirnfunktion :shock:
Hilft fast immer etwas weiter :-D |
Re: writeln modifizieren
@4toms: was soll das denn? :roll:
@mymuschy: ich glaube, writeln ist eine prozedur, die im compiler integriert ist. du kannst sie nicht modifizieren. aber was genau willst du denn damit machen? du kannst dir ja eine eigene writeln programmieren. Aenogym |
Re: writeln modifizieren
Zitat:
|
Re: writeln modifizieren
@Aenogym: Tschulligung! Aber im Thread der sinngemäß "Bildschirmfotos meines Arbeitsplatzes" kann ich z.Zt. noch kein Panoramafoto meines 1 € Jobs zur Verfügung stellen :-D
There goes the neighbourhood? |
Re: writeln modifizieren
4toms, das hättest du auch per PN sagen können. ist jetzt nichts gegen dich, aber im
![]() denn irgendwie passt das nicht in diesen thread. Aenoym |
Re: writeln modifizieren
Zitat:
Zitat:
Greetz alcaeus |
Re: writeln modifizieren
sowas hab ich mir schon gedacht
@Aenogym: ich habe versucht "writeln()" wie folgt zu ersetzen
Delphi-Quellcode:
problem dabei war das writln einmal so: writeln(s);
procedure writeln(var t:text;i:integer,s:string);
begin . .. ... end; und beim anderen mal so aufgerufen wird: writeln(t,i,s); und der Compiler bringt deswegen eine Fehlermeldung. Hintergrund ist folgender: ich habe ein programm mit mehreren tausend Zeilen möchte die Grafikausgabe nun (leider) im nachhinein per übergabeparameter ein und ausschalten ohne vor jedes writeln eine abfrage bauen zu müssen |
Re: writeln modifizieren
Hallo mymuschy,
der einzige Weg den du hast, ist folgender: Anstatt
Delphi-Quellcode:
musst du folgendes schreiben:
writeln(t, i, s);
Delphi-Quellcode:
Dies ist natürlich auf dein Beispiel mit den 3 Variablen bezogen ;)
writeln(t,IntToStr(i)+s);
Greetz alcaeus |
Re: writeln modifizieren
Schaue dir mal Array of Const an. Damit kannst du zumindestens unterschiedliche Parameter übergeben. Allerdings wirst du nicht drum rum kommen jedes WriteLn mal anzufassen.
|
Re: writeln modifizieren
Zitat:
|
Re: writeln modifizieren
Die writeln Funktion selbst lässt sich nicht ändern, da diese auf der Compiler-Magic basiert :zwinker: Da hilft es nur eine neue Funktion zu erstellen, welche alle möglichen Fälle abfängt :shock:
...:cat:... |
Re: writeln modifizieren
Kann man die Funktion nich einfach überladen?
Edit: Also bei Delphi 7 is das kein Problem.... Funktion einfach neu anlegen und in der Funktion dann Integer Werte umwandeln und an das echte writeln übergeben :> |
Re: writeln modifizieren
Zitat:
Delphi-Quellcode:
schlägt beim Compilieren fehl (es gibt keine überladene Version von writeln die mit diesen Parametern aufgerufen werden kann). Du würdest also direkt writeln überschreiben...
procedure writeln(s: String; i: Integer); overload;
begin writeln(s+IntToStr(i)); end; Greetz alcaeus |
Re: writeln modifizieren
Delphi-Quellcode:
Aufruf:
private
function writeln(x1, x2, x3: Variant): Boolean; [...] function TServer.writeln(x1, x2, x3: Variant): Boolean; begin system.Writeln(x1 + x2 + x3); end;
Delphi-Quellcode:
geht...
writeln('blah', 33, 'test');
Edit1: Tippfehler... Edit2: Ich meinte mit überladen auch nicht den Overload Constructor sondern einfach ne neue Funktion, die dann die System.Writeln aufruft ^^ |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz