Что не так с указателями?Smart, Shared, Scoped ... Сейчас я буду использовать стандартные указатели.
class B
{
public:
B(mySafeData* ptr) // constructor takes a memory pointer as parameter
:SafeData_ptr(ptr)
{
SafeData_ptr->foo(); // call public function from class A
}
~B() // destructor
{
}
private:
mySafeData* SafeData_ptr; // will hold the mem address of instance A when
// this class is initialized
};
Позже в вашем коде, когда у вас будет готов экземпляр A, вы сделаете что-то вроде этого:*
Вероятно, это не самый умный способ сделать это, но я думаю, что это иллюстрирует идею.