AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Größenbeschränkung eines array of record
Thema durchsuchen
Ansicht
Themen-Optionen

Größenbeschränkung eines array of record

Ein Thema von Sternkucker · begonnen am 4. Feb 2010 · letzter Beitrag vom 5. Feb 2010
Antwort Antwort
Sternkucker

Registriert seit: 6. Dez 2009
5 Beiträge
 
#1

Größenbeschränkung eines array of record

  Alt 4. Feb 2010, 22:33
Hallo liebe Forenmitglieder,

ich bin auf ein Phänomen gestoßen, das ich mir nicht erklären kann. Ich habe in einer Klasse ein array of record:

Delphi-Quellcode:
type TDice = class
  private
    Z: array of record
         A, B, C : double;
         D, E, F : array of integer;
         G, H, I : integer;
         J, K, L : boolean;
         M : String;
       end;
(...)
Funktioniert soweit einwandfrei. Wenn ich nun eine Variable N hinzufüge (egal welchen Types), bekomme ich beim Create der Klasse im Hauptprogramm (MyDice := TDice.Create) eine Schutzverletzung ("EAccessViolation"). 12 Variablen gehen, bei der 13. klappt es nicht mehr. Ich habe mit den Variablennamen und Typen herumgespielt, das scheint irrelevant zu sein. Ich verwende Delphi 2010.

Hat jemand eine Idee, woran das liegen könnte?
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.021 Beiträge
 
Delphi 12 Athens
 
#2

Re: Größenbeschränkung eines array of record

  Alt 5. Feb 2010, 07:31
Ich habe das hier mal mit einem N: Integer ausprobiert, aber keinerlei Probleme feststellen können...

Probier doch mal, den Record als eigenen Typ zu deklarieren und beim Klassenfeld dann diesen Typ zu benutzen. Du kannst auch noch eine Stufe weiter gehen und das array of record als eigenen Typ deklarieren. Wenn du diese Typen nicht außerhalb der Klasse brauchst, kannst du sie auch inenrhalb der Klasse deklarieren.
Uwe Raabe
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: Größenbeschränkung eines array of record

  Alt 5. Feb 2010, 07:40
Hier ebenfalls kein Problem.

(D2010 mit allen Updates)

[edit]
probier es mal mit 14 ... vielleicht ist 13 ja deine Unglückszahl?
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 Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Größenbeschränkung eines array of record

  Alt 5. Feb 2010, 07:44
Könnte es sein, dass der String eventuell Probleme bereitet?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Sternkucker

Registriert seit: 6. Dez 2009
5 Beiträge
 
#5

Re: Größenbeschränkung eines array of record

  Alt 5. Feb 2010, 09:28
Danke, habe die Lösung gefunden. PC neu starten hat geholfen! Standby und Ruhezustand, sowie Delphi öffnen+schließen waren ohne Wirkung geblieben - da hatte ich schon an mir bzw. meinem Delphi gezweifelt. Seit dem Reboot klappt es.

Ich vermute, dass irgendwelche Relikte im Speicher festgehängt sind. Da ich momentan viel Teste, habe ich es mit den .free etc nicht so genau genommen. Auch die array-Grenzen sind schon böse strapaziert worden...

Pardon, dass ihr eure Zeit für so einen Unsinn geopfert habt, ich werde in Zukunft immer neu starten vor ich hier poste
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

Re: Größenbeschränkung eines array of record

  Alt 5. Feb 2010, 09:54
Zitat von Sternkucker:
Pardon, dass ihr eure Zeit für so einen Unsinn geopfert habt, ich werde in Zukunft immer neu starten vor ich hier poste
Besser wäre es wenn du deinen Speicher nicht misshandeln würdest
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: Größenbeschränkung eines array of record

  Alt 5. Feb 2010, 09:57
Dennoch sollte Windows den Speicher freigeben, wenn das Programm beendet wird, selbst wenn man .Free vergißt (zumindestens seit WinNT).
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 Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#8

Re: Größenbeschränkung eines array of record

  Alt 5. Feb 2010, 10:02
Ja klar, aber er scheint es ja doch irgendwie geschafft zu haben was kaputt zu machen
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  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 05:34 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