July 15, 2004 [bug report] built-in operator == overloading | ||||
---|---|---|---|---|
| ||||
struct A {
A( bool b )
: b_( b )
{ }
operator int () {
return b_ ? 0 : 1;
}
operator bool () {
return b_;
}
bool b_;
};
int main() {
A a( true );;
// see 13.6 Built-in operators
// operator == only exists for promoted arithmetic types
if( a == true ) return 1;
// Error: ambiguous type conversion
if( a == 1 ) return 1;
// Error: ambiguous type conversion
return 0;
}
bye, Christof
--
http://cmeerw.org JID: cmeerw@jabber.at mailto cmeerw at web.de
...and what have you contributed to the Net?
|
Copyright © 1999-2021 by the D Language Foundation