From 754fd941ee0c30c347eaaf77706c8a797b8fdf18 Mon Sep 17 00:00:00 2001
From: Peter Dimov
-class Y: public enable_shared_from_this<Y>
+#include <boost/enable_shared_from_this.hpp>
+#include <boost/shared_ptr.hpp>
+#include <cassert>
+
+class Y: public boost::enable_shared_from_this<Y>
{
public:
- shared_ptr<Y> f()
+ boost::shared_ptr<Y> f()
{
return shared_from_this();
}
-}
+};
int main()
{
- shared_ptr<Y> p(new Y);
- shared_ptr<Y> q = p->f();
+ boost::shared_ptr<Y> p(new Y);
+ boost::shared_ptr<Y> q = p->f();
assert(p == q);
assert(!(p < q || q < p)); // p and q must share ownership
}