[C++-sig] Re: Making copy of function derived from C++ pure virtual function

Paul F. Kunz Paul_Kunz at slac.stanford.edu
Fri Dec 10 00:55:12 CET 2004


>>>>> On Wed, 08 Dec 2004 22:06:37 -0500, David Abrahams <dave at boost-consulting.com> said:


>   class_<std::auto_ptr<FunctionWrap> >("FunctionBase",
> init<FunctionBase const&>()) ...

   I tried.   Maybe I have typo I can't see.   I have ...


      class_ < std::auto_ptr < FunctionWrap > >
	( "FunctionBase",
	  init < FunctionBase & > () )


and get ...

../../hippodraw/python/FunctionWrap.cxx:37:   instantiated from here
/usr/local/include/boost-1_32/boost/python/object/value_holder.hpp:133: error: no matching function for call to `std::auto_ptr<FunctionWrap>::auto_ptr(FunctionBase&)'
/usr/local/lib/gcc/i686-pc-linux-gnu/3.4.3/../../../../include/c++/3.4.3/memory:351: note: candidates are: std::auto_ptr<_Tp>::auto_ptr(std::auto_ptr_ref<_Tp>) [with _Tp = FunctionWrap]
/usr/local/lib/gcc/i686-pc-linux-gnu/3.4.3/../../../../include/c++/3.4.3/memory:200: note:                 std::auto_ptr<_Tp>::auto_ptr(std::auto_ptr<_Tp>&) [with _Tp = FunctionWrap]
/usr/local/lib/gcc/i686-pc-linux-gnu/3.4.3/../../../../include/c++/3.4.3/memory:191: note:                 std::auto_ptr<_Tp>::auto_ptr(_Tp*) [with _Tp = FunctionWrap]

where


class FunctionWrap : public FunctionBase,
		     public boost::python::wrapper < FunctionBase >
{


Any suggestions?





More information about the Cplusplus-sig mailing list