[C++-sig] Re: def( str( self)) error
David Abrahams
dave at boost-consulting.com
Mon May 26 22:01:16 CEST 2003
Jonathan Brandmeyer <jbrandmeyer at earthlink.net> writes:
> I have a class that uses an overloaded << and >> operators for I/O.
> When I try to export that class with the member function .def( str(
> self)), I get a 'no function for call to' error. My operator has the
> following signature in C++, and works just fine for the standard
> streams, and stringstreams:
>
> namespace std
> {
> template<typename char_T, class traits>
> basic_ostream<char_T, traits>&
> operator<<( basic_ostream<char_T, traits>& stream, const
> physics::vector& v); // Definition not shown for brevity.
> } // !namespace std
>
> I'm using G++ 3.2.2, with identical errors on Win32/MinGW and Debian
> Sid.
Well, you're not allowed to add definitions to std:: - your function
should go in namespace physics. I'm not sure that would make a
difference though; it seems it should be found by Koenig Lookup
either way.
Bug reporting and help requests 101: Why don't you post a small
reproducible example, and at least give the full text of the error
message?
--
Dave Abrahams
Boost Consulting
www.boost-consulting.com
More information about the Cplusplus-sig
mailing list