Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Dofter

Treue Seele

  • »Dofter« ist der Autor dieses Themas

Beiträge: 159

Wohnort: im wunderbaren EBERMANNSTADT

Beruf: Schüler^^

  • Private Nachricht senden

1

15.05.2006, 16:04

list problem....

hallo ich hab ein problem mit einer liste:

C-/C++-Quelltext

1
2
3
SObject* NewObject = new SObject;
NewObject->Create(1);
m_ObjectsList.push_back(NewObject);

so is die liste definiert

C-/C++-Quelltext

1
std::list<SObject*> m_ObjectsList;

so des problem is dann es bein push_back() absürzt.
debugger schreibt:
m_ObjectsList [0]()
dann, beim fehler, dass es über 1000000 child items hat
ind in <list> stürzt er dann ab

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
 #if _HAS_ITERATOR_DEBUGGING
        if (_Where._Mycont != this)
            _DEBUG_ERROR("list insert iterator outside range");
 #endif /* _HAS_ITERATOR_DEBUGGING */

        _Nodeptr _Pnode = _Where._Mynode();
    da ->_Nodeptr _Newnode = _Buynode(_Pnode, _Prevnode(_Pnode), _Val);
        _Incsize(1);
        _Prevnode(_Pnode) = _Newnode;
        _Nextnode(_Prevnode(_Newnode)) = _Newnode;
        }


habt ihr ne ahnung warum?
"Wo kämen wir hin, wenn alle sagten, wo kämen wir hin, und keiner ginge,
um zu sehen, wohin wir kämen, wenn wir gingen"

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

2

15.05.2006, 17:19

Deine signatur stimmt nur wenn du (mod 2) rechnest! sonst ist ein schwerwiegender Fehler.

ext

Treue Seele

  • Private Nachricht senden

3

15.05.2006, 17:36

Zeig mal die Zeilen um den push_back-Aufruf. Ist das zufällig in ner Schleife (direkt oder indirekt)?

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

4

15.05.2006, 17:47

Zitat von »"koschka"«

Deine signatur stimmt nur wenn du (mod 2) rechnest! sonst ist ein schwerwiegender Fehler.

Das weiß er ;)
Habe ich nämlich auch schonmal drauf hingewiesen.

Dofter

Treue Seele

  • »Dofter« ist der Autor dieses Themas

Beiträge: 159

Wohnort: im wunderbaren EBERMANNSTADT

Beruf: Schüler^^

  • Private Nachricht senden

5

15.05.2006, 18:20

jup weis ich^^

also:
eigentlich kommt meine schleife erst vieeeel später.
es is also einzeln.
hier

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
SObject* NewObject = new SObject;
    NewObject->Create(1);
    sprintf_s(Filename, "gfx/Mencus/Walk_Left_1.png");
    NewObject->AddTexture(OLRM.GetTexture(Filename));
    m_ObjectsList.push_back(NewObject);

    for (int i=0; i<10;i++)
    {
        NewObject = new SObject;
        NewObject->Create(1);

        sprintf_s(Filename, "gfx/Enemys/Enemy%d/Walk_Left_1.png",i+1);
        NewObject->AddTexture(OLRM.GetTexture(Filename));
        m_ObjectsList.push_back(NewObject);

    }

so das is die ganze funktion
"Wo kämen wir hin, wenn alle sagten, wo kämen wir hin, und keiner ginge,
um zu sehen, wohin wir kämen, wenn wir gingen"

Dofter

Treue Seele

  • »Dofter« ist der Autor dieses Themas

Beiträge: 159

Wohnort: im wunderbaren EBERMANNSTADT

Beruf: Schüler^^

  • Private Nachricht senden

6

16.05.2006, 13:13

LUSTIG :-D
heute starte ich das programm und :
Stürzt nicht mehr ab, obwohl ich nix verändert hab... loool
"Wo kämen wir hin, wenn alle sagten, wo kämen wir hin, und keiner ginge,
um zu sehen, wohin wir kämen, wenn wir gingen"

Lemming

Alter Hase

Beiträge: 550

Beruf: Schüler

  • Private Nachricht senden

7

16.05.2006, 14:51

Dofter
und wieder ein beweis dafür, dass rechner nach einfachen, logischen, durchschaubaren mustern arbeiten ;) ...

ich hab das bei nem sound prog. wenn ich den rechner gerade gestartet habe, dann bekomme ich ne access violation. wenn ich die exe dann aus nem archiev und danach wieder normal starte läuft es fehler frei. und wenn ichs dann nach einiger zeit wieder starte hab ich im logbuch haufenweise fehlermeldungen von wegen zu wenig ram. hab aber 1gb ram. raff ich nicht, aber ich finds lustig :D
Es gibt Probleme, die kann man nicht lösen.
Für alles andere gibt es C++...

Werbeanzeige