AGB  ·  Datenschutz  ·  Impressum  







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

Warum erscheint eine Fehlermeldung?

Ein Thema von ThaiSon96 · begonnen am 17. Feb 2014 · letzter Beitrag vom 20. Feb 2014
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#11

AW: Warum erscheint eine Fehlermeldung?

  Alt 19. Feb 2014, 00:05
Der Debugger (oder ein Test ala if Assigned(heute) then Beep; oder Assert(not Assigned(heute)); ) meint aber dennoch, daß die Variable NIL ist, oder hat die doch irgendeinen Inhalt?


Beim ODER hängt es dann davon ab, ob und worauf "zufällig" der Wert zeigt,
also ob es überhaupt und wenn ja wann es knallt.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.323 Beiträge
 
Delphi XE2 Professional
 
#12

AW: Warum erscheint eine Fehlermeldung?

  Alt 19. Feb 2014, 08:26
Bei if Assigned(heute) then Beep; pieps

und bei Assert(not Assigned(heute)); ) kommt folgende Fehlermeldung:

Zitat:
---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt Project2.exe ist eine Exception der Klasse EAssertionFailed aufgetreten. Meldung: 'Assertion fehlges (E:\Delphi 7\_TEST-PROJEKT_\Project2.dpr, Zeile 84)'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.
---------------------------
OK Hilfe
---------------------------
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.016 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#13

AW: Warum erscheint eine Fehlermeldung?

  Alt 19. Feb 2014, 09:48
Autsch, dann wird bei D7 wohl die globale Variable nicht initialisiert, wie bei späteren Versionen.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#14

AW: Warum erscheint eine Fehlermeldung?

  Alt 19. Feb 2014, 10:07
Sieht so aus. Nun weiß ich auch, wieso man sie früher ggf. direkt bei der Deklaration initialisiert hat.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.156 Beiträge
 
Delphi 10 Seattle Enterprise
 
#15

AW: Warum erscheint eine Fehlermeldung?

  Alt 19. Feb 2014, 11:13
Barry Kelly meint
Zitat:
You can depend on global variables being zero-initialized.
Dieser elende Schuft.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#16

AW: Warum erscheint eine Fehlermeldung?

  Alt 19. Feb 2014, 11:23
Tja, und ich dachte sei im Delphi schon immer so.

Da kann der T.E. "froh sein, daß der Zeiger zufällig auf was zeigte.
Nur blöd, daß es was Wichtiges war, was da überschrieben wurde (fast wie ein BufferOverrun) und das dann am Ende kaputt war, als es freigegeben werden sollte.


Aber wer verwendet schon globale Variablen? Kein Wunder, wenn man das alte Verhalten nicht bemerkt.

Sieht so aus. Nun weiß ich auch, wieso man sie früher ggf. direkt bei der Deklaration initialisiert hat.
Stimmt ja, globale Variablen kann man ja, wie Konstanten, mit einem Initialwert vorbelegen. (hab ich mir für Lokale und Felder auch schonmal gewünscht )
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (19. Feb 2014 um 11:29 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.016 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#17

AW: Warum erscheint eine Fehlermeldung?

  Alt 19. Feb 2014, 16:49
Barry Kelly meint
Zitat:
You can depend on global variables being zero-initialized.
Dieser elende Schuft.
Das hat er 2008 geschrieben, da war das vermutlich schon so.

Tja, und ich dachte sei im Delphi schon immer so.
Ich auch - und sollte auch so sein. Ich denke, das war ein Bug.
In "Delphi in a Nutshell" (von 2000 - also Delphi 5 Ära) heißt es auf Seite 395:
Zitat:
Without an initial value, a global variable is initialized to zero (empty string, nil pointer, etc.)
Witzigerweise gibt es trotzdem noch eine Warnung auf eine nicht initialisierte Variable, die ja eigentlich nicht kommen sollte, denn sie ist ja initialisiert
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie (19. Feb 2014 um 16:59 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#18

AW: Warum erscheint eine Fehlermeldung?

  Alt 20. Feb 2014, 11:37
Sieht so aus. Nun weiß ich auch, wieso man sie früher ggf. direkt bei der Deklaration initialisiert hat.
Wenn man sich nicht darauf verlassen will, daß irgendjemand das erledigt, macht man es selbst!

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#19

AW: Warum erscheint eine Fehlermeldung?

  Alt 20. Feb 2014, 11:40
Da ich schon länger keine globalen Variablen mehr verwende, ist mir das auch unter Delphi 7 nicht aufgefallen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#20

AW: Warum erscheint eine Fehlermeldung?

  Alt 20. Feb 2014, 11:49
ist mir das auch unter Delphi 7 nicht aufgefallen.
Gäbe es TDE noch, wäre das Problem bestimmt schon weg.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 08:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz