On Friday, 6 September 2013 at 11:32:11 UTC, Benjamin Thaut wrote:
Its only a source of troubles in C++ because it is the default behavior. But if you design a library it can make the usage of your api easier and also you have a few more options to stay backwards compatible with your old api.
Probably. But what is the gain? `foo(Foo(5))` looks better than `foo(5)` to me in every possible way.
For example, use case that justifies operator overloading (despite the danger) in my eyes is ability to replace built-in types with custom ones. What is the similar rationale for implicit conversion?
