Einzelnen Beitrag anzeigen

Gravitar

Registriert seit: 8. Okt 2006
94 Beiträge
 
Delphi 7 Enterprise
 
#8

AW: Unterschied zwischen Variant und Generics

  Alt 6. Jun 2014, 14:57
Ich meinte das so:
Delphi-Quellcode:
var
  a, b: Variant;
  x, y: Integer;
begin
  SwapTwoValues(a, b);
  SwapTwoValues(x, y); // geht nicht
end;
Natürlich ist es nahezu egal, was man in die Variant-Variablen rein packt, (der Funktion ist es total egal, nur es passt nicht alles in einen Variant rein)

aber man kann meine keine Variablen anderer Typen übergeben und genau das meinte ich.
Ja, stimmt. In Swift ist mit Generics das hier möglich:

Code:
    var someInt = 3
    var anotherInt = 107
    swapTwoValues(&someInt, &anotherInt)
    // someInt is now 107, and anotherInt is now 3
   
    var someString = "hello"
    var anotherString = "world"
    swapTwoValues(&someString, &anotherString)
    // someString is now "world", and anotherString is now "hello"
In Delphi darf ich nur Variants übergeben und erhalte natürlich auch nur Variants zurück. Dort könnte ich z.B. auch a= "Hallo" und b = 5 übergeben. Dies würde dann in der Procedure krachen. Swift läßt sowas nicht zu. Schon der Aufruf schlägt wegen unterschiedlicher Typen fehl.
  Mit Zitat antworten Zitat