10 May
2011
10 May
'11
9:17 a.m.
On Tue, May 10, 2011 at 9:54 AM, Mupparthy Ravindranath
Sorry for the spam. I got the answer, how to do it. Ignore my previous mail.
[quote] #include
#include <iostream> using namespace std; class A { public: void hello () { cout << "Hello, friends...!" << endl; } };
typedef boost::shared_ptr<A> APtr;
void* callbk (void* o) { APtr a = *static_cast
(o); a->hello(); } int main() { A* rawPtr = new A; boost::shared_ptr<A>sPtr(rawPtr); callbk((void*)&sPtr); return 0; } [/quote]
Not like that! That passes the address of the shared pointer, not the address of your new'd object. If it works it's by luck! - R.