![]() |
Variant als Ergeb. einer Function
Ich habe eine Function mit einem Ergebnis vom Type Variant.
Nun versuche ich, das Ergebnis zu initialisiern. Also etwa so:
Delphi-Quellcode:
Sporadisch (häufig) geht das, zur Laufzeit, schief, da angeblich eine unzulässige Typenumwandlung vorliegt.
Function MyFoo:Variant;
Begin result := Unassigned; : Auch ClearVar(result), result := NULL usw. scheitern. Mein Workaround ist:
Delphi-Quellcode:
Das funktioniert (zumindst bis her). Die Ursache ist offenbar, dass im, ja noch nicht initialisierten, "result" das VType auf einem Wert steht, welcher jede folgende Initialisierung des Result unmöglich macht. TVarData(result).VType := 0; Ist das ein bekanntes Verhalten, oder mache ich da was falsch? PMM |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:21 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