2009/3/25 Michał Nowotka <mmm...@gmail.com>: > Hello, > > First of all I found that set of return value polices mention in > boost.python documentation > (http://www.boost.org/doc/libs/1_38_0/libs/python/doc/tutorial/doc/html/python/functions.html#python.call_policies): > > * reference_existing_object > * copy_const_reference > * copy_non_const_reference > * manage_new_object > > is different from those described in Py++ docs(): > > * return_opaque_pointer. > * copy_const_reference > * return_by_value > * copy_non_const_reference > * return_internal_reference
http://language-binding.net/pyplusplus/documentation/functions/call_policies/call_policies.html#syntax Py++ introduces additional call policies for your convenience. > Secondly, I really don't have any idea which call policy should i > choose with following method: > > class Allel { > > public: > > (...) > const Locus* getLocus() const { return locus_; } > // <--- This generates warning W1050 > private: > > (...) > const Locus* locus_; > > }; > > or generally which policy should be choosen for method with no > arguments returning pointer-type member of it's class. Based on information you provided, I would use "return_internal_reference". I suggest you to read Boost.Python tutorials. It is critical to understand call policies for successful Boost.Python usage. -- Roman Yakovenko C++ Python language binding http://www.language-binding.net/ _______________________________________________ Cplusplus-sig mailing list Cplusplus-sig@python.org http://mail.python.org/mailman/listinfo/cplusplus-sig