![]() |
AW: Grafik im Speicher erstellen für BlobStream (DB)
Delphi-Quellcode:
EDIT:
if not Assigned(Abmp) then
Abmp := Vcl.Graphics.TBitmap.Create; Warum? Es wird sich immer beschwert das man NIE auf True oder False hin prüfen soll. Was ist eine Prüfung auf Nil.. Ja oder Nein, 1 oder 0, True oder False. Also es ist in jedem fall eine Prüfung darauf ob der Wert True oder False ist. Wenn man sich schon hier beschwert ->
Delphi-Quellcode:
if (x = True) then
sollte das gleiche auch bei Nil gelten. Denn Assigned liefert den korrekten wert nämlich True oder False. Es ist nicht grundsätzlich falsch auf NIL zu prüfen aber dann hat auch die Prüfung auf True wie im Beispiel seine Berechtigung. Wenn nicht dann bitte schön konsequent bleiben und auch nicht auf NIL hin prüfen. Dafür gibt es Assigned. |
AW: Grafik im Speicher erstellen für BlobStream (DB)
Wenn das Objekt aber in der Function erstellt wurde, übersieht man dann nicht außerhalb die Freigabe?
LG 👋🏻 |
AW: Grafik im Speicher erstellen für BlobStream (DB)
Zitat:
Für mich pers. ist das der bessere Umgang da es generischer ist und (sogut wie) immer ein resultat liefert. Der eigentliche Grund warum ich überhaupt den Code abgeändert gepostet habe war deine "width and height = 0" abfrage. Wozu ein Bitmap erstellen lassen wenn eins von beiden 0 sein darf? Es tut mir leid wenn dir mein vorschlag unangehm vorkommt. Jeder kocht halt sein eigenes süppchen. |
AW: Grafik im Speicher erstellen für BlobStream (DB)
Die übergebene Bitmap müsste aber dann ein Var-Parameter sein, sonst ist die Referenz weg, die Instanz aber weiterhin da.
|
AW: Grafik im Speicher erstellen für BlobStream (DB)
Zitat:
Aber gut jedem das seine ;) |
AW: Grafik im Speicher erstellen für BlobStream (DB)
Zitat:
Eine "if" abfrage, egal wie man sie formuliert, bleibt immer eine True oder False abfrage. Uwe Raabe hatte doch gerade erst gezeigt das eine "if nil" und ein "if assigned()" per debugger den gleichen code ausspuckt oder irre ich mich jetzt total? Ich nehme natürlich gerne ratschläge dazu an, also Danke für Deinen Ratschlag!! :thumb: |
AW: Grafik im Speicher erstellen für BlobStream (DB)
Nochmal für Emil zum Mitschreiben:
Delphi-Quellcode:
Deshalb vergleicht man nicht mit true, das hat mit einer Prüfung auf nil nichts zu tun.
function APICallResult: integer;
begin Result := not 0; end; procedure TForm13.Button1Click(Sender: TObject); var lBool: Boolean; begin lBool := Boolean(APICallResult); if lBool = true then ShowMessage('Vergleich mit true ergibt true') else if lBool then ShowMessage('Prüfung ohne Vergleich ergibt true'); end; |
AW: Grafik im Speicher erstellen für BlobStream (DB)
Zitat:
Wollte nur mal auf die nicht konsequente Herangehensweise hinweisen. |
AW: Grafik im Speicher erstellen für BlobStream (DB)
Zitat:
|
AW: Grafik im Speicher erstellen für BlobStream (DB)
Zitat:
Wie man sie letztendlich prüft bleibt sich gleich. Aber wenn schon dann mit allen Variablen gleich so wie es in C++ auch stattfindet. Ok bin raus ist ein anderes Thema. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:19 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