M
Marcin Kalicinski
Is the code below ill formed (because operator >> is defined in different
namespace than class B)?
It fails with VS 2005 Beta. I don't know if I should redesign my code or if
I should find a better compiler?
namespace N1
{
class A { };
std::istream &operator >>(std::istream &, A &);
}
namespace N2
{
class B: public A { };
}
void f()
{
A a;
B b;
cin >> a; // OK
cin >> b; // Error: cannot find a matching operator >> for class B
}
namespace than class B)?
It fails with VS 2005 Beta. I don't know if I should redesign my code or if
I should find a better compiler?
namespace N1
{
class A { };
std::istream &operator >>(std::istream &, A &);
}
namespace N2
{
class B: public A { };
}
void f()
{
A a;
B b;
cin >> a; // OK
cin >> b; // Error: cannot find a matching operator >> for class B
}