क्या निम्न कोड में प्रारंभकर्ता सूची में किसी अन्य ऑब्जेक्ट को 'यह' पास करते समय कोई समस्या है?इसे कन्स्ट्रक्टर प्रारंभकर्ता सूची से पास कर रहा है
class Callback { public: virtual void DoCallback() = 0; };
class B
{
Callback& cb;
public:
B(Callback& callback) : cb(callback) {}
void StartThread();
static void Thread()
{
while (!Shutdown())
{
WaitForSomething();
cb.DoCallback();
}
}
};
class A : public Callback
{
B b;
public:
A() : b(*this) {b.StartThread();}
void DoCallback() {}
};
यदि ऐसा करने में असुरक्षित है, तो सबसे अच्छा विकल्प क्या है?
तब और अब के बीच कुछ समय, सी ++ पूछे जाने वाले प्रश्न से महान लेख माइग्रेट कर लिया है [यहां] (https: // isocpp .org/wiki/पूछे जाने वाले प्रश्न/ctors # का उपयोग कर-यह-इन-ctors) – peterpi