Jeśli chodzi o konstruktorów, dodanie słowa kluczowego explicit
uniemożliwia entuzjastycznemu kompilatorowi tworzenie obiektu, który nie był jego pierwszą intencją. Czy taki mechanizm jest dostępny również dla operatorów odlewniczych?Czy operator obsady może być jawny?
struct Foo
{
operator std::string() const;
};
Oto, na przykład, chciałbym móc oddawać Foo
w std::string
, ale ja nie chcę takiej obsady zdarzyć się niejawnie.
+1. Czy mógłbyś zamieścić przykład kodu C++ 11? – FailedDev
@FailedDev: Gotowe. :-) – Nawaz
Bardzo miłe dzięki! – FailedDev