fat-lobyte hat geschrieben:Naja, nicht unbedingt. Manchmal können NULL Pointer dazu führen, dass bestimmte Memberfunktionen problemlos aufgerufen werden können (weil sie keinen this- Zeiger brauchen). Der Fehler tritt dann an einer anderen, für dich nicht sichtbaren Stelle auf.
Überprüf mal die Zeiger die du an deinen OpenSceneGraph fütterst.
Das Problem liegt, glaube ich, einfach irgendwo IN OpenSceneGraph, bei der Weiterleitung der Daten an das SDL-Fenster.
Zeiger übergebe ich nicht, zumindest nicht direkt.
Ich habe eine Viewer-Instanz, deren Member frame() aufgerufen wird (werden muss).
Evtl. kommt das Problem auch daher, dass diese Viewer-Instanz über einen osg::ref_ptr<> im ursrpünglichem Thread erstellt wird. Die ref_ptr sollen eigentl "Threadsicher" sein, aber ich weiß nicht...
fat-lobyte hat geschrieben:Ich hab aus dem Thread aber eine Sache noch immer nicht so ganz verstanden:
Wenn du ein map mit "allen" objekten hast, also Objekte eines beliebigen Typs, was genau willst du damit eigentlich machen? Was kannst du mit "einem beliebigen Objekt" tun?
Um mit etwas zu arbeiten müsste man wissen was es ist, und das ist im Typ gespeichert. Wenn du diese Information vernichtest ist außer "da ist irgendwas" nichts mehr da.
Welchen Zweck hat dieses Map im Kontext deines Programms?
Naja, es bedeutet für mich deutlich weniger Schreibarbeit. Ich hab auf diese Art 3 Memberfunktionen, mit denen ich beliebige Objekte hinzufügen, suchen und wieder entfernen kann.
Ich füge ja nur "bekanntes" in diese Map ein, und suche folglich nur nach Bekanntem.
Die Map ist also keineswegs dynamisch zur Laufzeit beliebig veränderbar.
Dazu müsste ich im String wohl noch eine Typbeschreibung einbauen, nach der dann (aus einer festgelegten Menge an Typen) der Typ bestimmt wird. Das ist mir jetzt aber zu aufwendig.
Und: Vorrangig hat es mich interessiert, ob und wie (einfach oder schwer) so etwas realisierbar ist
