15 #ifndef Om_DefaultCopyable_
25 typename ThisImplementation, \
26 typename ThisInterface \
30 Om::DefaultCopyable< \
38 inline Type_::~DefaultCopyable() {}
41 inline std::auto_ptr<Om::Copyable>
Type_::Copy()
const {
43 dynamic_cast<ThisImplementation
const *
>(
this)
45 return std::auto_ptr<Copyable>(
46 new ThisImplementation(
47 static_cast<ThisImplementation
const &
>(*
this)
std::auto_ptr< TheCopyable > Copy(TheCopyable const &)