AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Problem mit msvcrt.dll

Ein Thema von Mokus · begonnen am 2. Jul 2014 · letzter Beitrag vom 3. Jul 2014
Antwort Antwort
Seite 2 von 2     12
Benutzerbild von Mokus
Mokus

Registriert seit: 24. Sep 2013
165 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#11

AW: Problem mit msvcrt.dll

  Alt 3. Jul 2014, 11:06
sooo. . .

Ich gehöre eigentlich bestraft für diesen Fehler.
Habe gestern abend noch den Fehler gefunden, war aber zu Faul noch ein DP EIntrag zu schreiben ...


ALT:
Delphi-Quellcode:
constructor TStadt.create(pname: string; pNachbarn: allNachbarn);
var
  I: integer;
begin

  self.Fname := pname;
  self.Nachbarn := pNachbarn;
  for I := 0 to length(pNachbarn) do
    Nachbarn[I].besucht := False;
end;

NEU:
Delphi-Quellcode:
constructor TStadt.create(pname: string; pNachbarn: allNachbarn);
var
  I: integer;
begin

  self.Fname := pname;
  self.Nachbarn := pNachbarn;
  for I := 0 to length(pNachbarn) - 1 do // Hier ist der Unterschied ...
    Nachbarn[I].besucht := False;
end;
Im Constructor von der Stadt wurde die Nachbarn in einem Array übergeben, ich laufe danach mit einer FOR Schleife alle Nachbarn durch und sagte ihn, das diese noch nicht besucht sind.
Hier haben wir wieder das alte Problem mit dem Index und der Anzahl bzw. Länge ...

die Länge gibt 1 zurück.
wir machen den durchlauf auf Index 0, da ist ein Wert.
dann auf index 1, hier ist aber nichts hinterlegt.
Es kamm wohl keine Out of range execption sondern er versucht wohl im Arbeitsspeicher irgendwas zu überschreiben, auf eine NIL adresse . . .

Hierbei hat er wohl auch die Instanz von der KLasse verloren . . .

Mysteriös ?!

danke an euch, für die schnelle Hilfe


besonderen dank an baumina
dank dir hab ich mir nochmal den construcotr angeschaut ^^
Markus
es gibt nur 10 arten von menschen !
die die binär verstehen und die die nicht. !
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Problem mit msvcrt.dll

  Alt 3. Jul 2014, 12:51
for I := Low(pNachbarn) to High(pNachbarn) do // Low ist bei dynamischen arrays allerdings immer 0


Das wäre aber auch selber sofort aufgefallen, wenn du mal in den Projektoptionen die Index-Prüfung aktivierst.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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:55 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