我想通過調用另一個類的方法來傳遞MyClass對象的引用。傳遞一個帶有「this」作爲參數的shared_ptr並將其存儲在一個變量中
這是MyClass的是如何定義的
typedef boost::shared_ptr<class MyClass> MyClassRef;
class MyClass {
//bla bla bla
};
MyClass::method(){
someObject->someMethod(this); //this object is from the ReceiverClass
}
我我主要的應用程序創建的對象是這樣的:
myObject = MyClassRef(new MyClass());
所以我必須如何定義ReceiverClass的someMethod()領取「這個」作爲一個參數,然後將其存儲在一個成員變量?
在僞代碼,我認爲這將是這樣的......
class ReceiverClass {
public:
void someMethod(shared_ptr param);
shared_ptr mReference;
};
ReceiverClass::someMethod(shared_ptr param){
mReference = param;
}
...但我完全失去了。
boost :: enable_shared_from_this。 – Lalaland 2012-02-07 06:13:42
你有什麼問題? – Chip 2012-02-07 06:16:17
問題是我不知道該怎麼做。 – Pier 2012-02-07 07:29:04