Ich habe folgendes Szenario:Ciclomatic Abhängigkeit und geteilt und schwacher Zeiger
Aber ich habe einige Probleme mit dem Speicher habe, da meine Dispatcher
immer gelöscht wird, scheint vor seinem zu Window
gesendet.
würde ein Pseudo-Code wie folgt aussehen:
class Kernel
{
shared_ptr<Window> window;
shared_ptr<Dispatcher> dispatcher;
}
class Window
{
weak_ptr<Dispatcher> dispatcher;
}
class Dispatcher
{}
Wie kann ich intelligente Zeiger korrekt verwenden, dieses Problem zu lösen?
Können Sie Ihr Problem mit dem Frieden von Code zeigen? In Ihrem Schema muss der Kernel alle Objekte behalten, da das Fenster und der Dispatcher am Leben bleiben, solange der Kernel lebt. – AnatolyS
[MVCE] (http://stackoverflow.com/help/mcve), bitte. – skypjack
In Ihrem Code gibt es kein Problem. Fügen Sie einfach Forward-Deklaration vor Kernel für Window- und Dispatcher-Klassen hinzu. – AnatolyS