![]() |
Eine Art var_dump() in Delphi..?!
Hallihallo liebe Gemeinde,
ich suche eine Art var_dump() Funktio, wie es sie in PHP gibt, für Delphi. Ich habe oft irgendwo in meinem Script variablen, Arrays, Strukturen oder Records, deren Werte ich gerne zur Laufzeit ausgeben lassen würde. In PHP gibt es für sowas die wunderbare Funktion var_dump(). Im PHP-Sourcecode lässt sich leider nichts finden, was (in meinen Augen)wirklich zu der Funktion gehört und portierbar wäre, ich finde den PHP-Source irgendwie furchtbar unlogisch.. Falls jemand sich irgendwann mal so eine Funktion geschrieben hat, oder weiß, wie man den PHP-Source porten könnte, fände ich es echt endgeil, wenn diese Person den Source (oder Hinweise/Tipps) hier posten könnte :D Danke! |
Re: Eine Art var_dump() in Delphi..?!
PHP und Delphi sind komplett unterschiedlich, in Delphi hast du einen Debugger, der dir alles anzeigen kann.
Ich glaub in der DP gibt es ein Tutorial zum Debuggen wie ausführlich es ist weiß ich allerdings nicht. (ich gehöre zu der Sorte die nicht Debuggt, da meine Programme keine Fehler haben :mrgreen: ) mfg, Björn |
Re: Eine Art var_dump() in Delphi..?!
ich glaub da wirst du schlechte Chancen haben. Denn PHP ist eine Interpretersprache und Delphi nicht. Unter Delphi kannst du dynamsich Speicher anfordern ohne eine Variable darauf zu halten und kannst da auch etwas rein schreiben.
|
Re: Eine Art var_dump() in Delphi..?!
Du müsstest eine Funktion schreiben, die diese Ausgabe für jeden möglichen Variablentyp machen würde. Also eine für Ganzzahlen, eine für Fließkommawerte, eine für Strings, eine für TObject, eine für TComponent, halt eine für jeden Datentyp, den Du ausgeben müsstest.
Teilweise kann Dir da ggf. die RTTI weiterhelfen, aber Delphi ist nunmal keine interpretierte Sprache wie PHP, wo der Interpreter alle Informationen über die verwendeten Typen hat, und die RTTI ist auch nicht so mächtig wie das Reflection in .NET, also wird Dir da ne menge Handarbeit nicht erspart bleiben. |
Re: Eine Art var_dump() in Delphi..?!
wiiiiii.. danke für die antworten.. das wird ja was ~_~..
Naja, da habe ich nicht nachgedacht. Sry. Ich hatte einfach diese.. Hoffnung, das jemand schon mal das gleiche Bedürfnis gehabt hat und deswegen auch mal sowas geproggt hat. Für soviel Aufwand mach ichs dann doch lieber immer von Hand..^^ |
Re: Eine Art var_dump() in Delphi..?!
Das ist jetzt eine kurze ungeprüfte Überlegung.
![]() Stimmt doch, oder? Müsste ich mal probieren, wenn ich Zeit habe. |
Re: Eine Art var_dump() in Delphi..?!
Zitat:
Das funktioniert nur mit von TCollectionItem abgeleiteten klassen. Und das generelle Serialisieren von Objekten geht auch nur mit von TPersistent abgeleiteten Objekten. Leider nicht mit Structs. Wie gesagt: Mit der RTTI kann man schon einiges über die Typen erfahren (u.a. published Properties), aber das hilft eben auch nicht bei Structs. In den Fällen würde ich mir - wenn man für einen bestimmten Datentyp wirklich eine Ausgabe braucht - diese eben einmal selber schreiben. Dann kann man die immer wieder verwenden, wenn man diesen Typ ausgeben will - egal wo und wie dr verschachtelt ist. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:00 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