Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > C++ Moderated > Re: some quirks...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 4 of 5 Topic 9572 of 9823
Post > Topic >>

Re: some quirks of Koenig lookup rule?

by Thomas Maeder <maeder@[EMAIL PROTECTED] > May 6, 2008 at 01:13 PM

Michael Kilburn <crusader.mike@[EMAIL PROTECTED]
> writes:

> Can someone explain this peculiar behavior of MSVC & GCC:

Yes.

NB: Your question isn't related to argument dependant (aka Koenig)
lookup. It's a basic overloading problem (if these exist at all).


> code below, if you uncomment that line (which is totally unrelated to
> 'dph' class), will stop compiling with usual bizzare C++ error

It's unrelated to struct dph, but it's related to that type's
operator<<().


> [code]
> #include <iostream>
>
> namespace AAA {
>      struct gad
>      {
>      };
>
>      //std::ostream& operator<<(std::ostream& s, gad const&);
>
>      struct dph
>      {
>          void f();
>      };
>
> }
>
> std::ostream& operator<<(std::ostream& s, AAA::dph const&)
> {
>      return s;
> }
>
> void AAA::dph::f()
> {
>      std::cout << *this;

This statement causes the compiler to look for operator<<()s in a
sequence of scopes.

The first scope considered is the struct dph, which doesn't have an
operator<<() member.

The next scope considered is namespace AAA, where an operator<<()
declaration is found.

The compiler then determines that the parameters required by
AAA::operator<<() don't match those you intend to pass.

No further scope is then considered.


The obvious fix is to move the other operator<<() into namespace AAA.

-- 
      [ See http://www.gotw.ca/resources/clcm.htm
for info about ]
      [ comp.lang.c++.moderated.    First time posters: Do this! ]
 




 5 Posts in Topic:
some quirks of Koenig lookup rule?
Michael Kilburn <crusa  2008-05-06 08:24:11 
Re: some quirks of Koenig lookup rule?
"Bo Persson" &l  2008-05-06 12:47:56 
Re: some quirks of Koenig lookup rule?
nickf3 <nickf3@[EMAIL   2008-05-06 12:44:45 
Re: some quirks of Koenig lookup rule?
Thomas Maeder <maeder@  2008-05-06 13:13:26 
Re: some quirks of Koenig lookup rule?
dizzy <dizzy@[EMAIL PR  2008-05-07 11:43:27 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Thu Jul 24 1:34:18 CDT 2008.