AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TStringList x64 nicht nil

Ein Thema von venice2 · begonnen am 11. Feb 2020 · letzter Beitrag vom 12. Feb 2020
Antwort Antwort
venice2
(Gast)

n/a Beiträge
 
#1

AW: TStringList x64 nicht nil

  Alt 12. Feb 2020, 12:08
Zitat:
Falls du die Liste in der Funktion nicht erstellst oder komplett neu zuweist ist der var Parameter falsch und sollte weg.
Danke für den Hinweis aber er ist nicht falsch und kann auch nicht weg.

Es hat schon einen Grund warum beim initialisieren meiner Klasse die Liste NIL sein muss.
Sie wird erst gefüllt wenn OpenFile von außerhalb meiner Klasse aufgerufen wird.

Darum ging es aber auch nicht sondern um die Frage warum in x64 nicht NIL und unter x86 = NIL ohne List zu initialisieren.

Denke die korrekte Antwort kommt von @hoika. Damit ist die Frage für mich beantwortet.

Zitat:
mit Optimierung=nil
ohne Optimierung<>nil
Zitat:
@hoika Halo,
müßig ist es nicht.

Es lesen ja auch Anfänger mit (hoffentlich).

Und man sollte schon alle Compiler-Warnungen beheben.
Richtig!
Nur in meinem Fall gibt es keine Warnung sagte ich schon. Warum wurde auch schon geklärt.

Geändert von venice2 (12. Feb 2020 um 12:18 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.684 Beiträge
 
Delphi 5 Professional
 
#2

AW: TStringList x64 nicht nil

  Alt 12. Feb 2020, 13:30
Sie wird erst gefüllt wenn OpenFile von außerhalb meiner Klasse aufgerufen wird.
Ein Befüllen einer TStringList ist auch möglich, wenn diese als const an eine Funktion übergeben wird. Nur ein Zuweisen einer neuen Instanz benötigt var (oder out ). Eine Variable auf eine TStringList hält doch nur einen Pointer auf einen Speicherbereich, was die Veränderung des Speicherbereichs (=Inhalte der TStringList) aber nicht verhindert.

Kurz gesagt: Überleg dir ganz genau, ob du das var wirklich brauchst.

Grüße
Dalai
  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 14:47 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