AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Einen Parameter, der eine Referenz erwartet, stattdesem einen Wert übergeben
Thema durchsuchen
Ansicht
Themen-Optionen

Einen Parameter, der eine Referenz erwartet, stattdesem einen Wert übergeben

Ein Thema von Bladefire · begonnen am 2. Jan 2015 · letzter Beitrag vom 3. Jan 2015
Antwort Antwort
Bladefire

Registriert seit: 30. Jun 2014
67 Beiträge
 
#1

Einen Parameter, der eine Referenz erwartet, stattdesem einen Wert übergeben

  Alt 2. Jan 2015, 20:39
Hallo,

Gibt es eine möglichkeit einer procedur, die eine Referenz erwartet, stattdesen einen Wert zu übergeben? (Ohne das ich extra eine zwischenvariable machen muss; Ohne dass ich etwas neu deklarieren muss)

Lg Simon
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Einen Parameter, der eine Referenz erwartet, stattdesem einen Wert übergeben

  Alt 2. Jan 2015, 20:47
Nein
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#3

AW: Einen Parameter, der eine Referenz erwartet, stattdesem einen Wert übergeben

  Alt 2. Jan 2015, 21:02
Stümmt.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: Einen Parameter, der eine Referenz erwartet, stattdesem einen Wert übergeben

  Alt 2. Jan 2015, 21:27
Da Programmierer von Haus aus sehr (schreib-)faul sein sollen (DRY) behelfen sich die meisten mit einem Wrapper:
Delphi-Quellcode:
procedure foo( var AValue : string );
begin
  AValue := 'foo' + AValue;
end;

function foowrap( const AValue : string ): string;
begin
  Result := AValue;
  foo( Result );
end;
Schwupps ist das mit der Referenz gegessen
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Einen Parameter, der eine Referenz erwartet, stattdesem einen Wert übergeben

  Alt 3. Jan 2015, 00:53
Na komm schon.

Will hier denn keiner ein wüstes Pointer-gecaste vorschlagen?
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#6

AW: Einen Parameter, der eine Referenz erwartet, stattdesem einen Wert übergeben

  Alt 3. Jan 2015, 01:32
Na komm schon.

Will hier denn keiner ein wüstes Pointer-gecaste vorschlagen?
Nö, wir kennen den Unterschied zwischen Nacht- und Koch-Topf.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#7

AW: Einen Parameter, der eine Referenz erwartet, stattdesem einen Wert übergeben

  Alt 3. Jan 2015, 11:08
Delphi-Quellcode:
Procedure Foo (Var Bar : Integer);
Begin
  Inc(Bar);
End;

...

Foo (WildesPointerGeCaste(5))
Wie könnte 'WildesPointerGeCaste' denn aussehen? Und, muss ich befürchten, das 5 hinterher 6 ist?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22: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