Когда дело доходит до конструкторов, добавление ключевого слова explicit
не позволяет энтузиастскому компилятору создавать объект, если это не было первым намерением программистов. Доступен ли такой механизм для операторов литья?
struct Foo
{
operator std::string() const;
};
Здесь, например, я хотел бы использовать Foo
в std::string
, но я не хочу, чтобы такой приказ выполнялся неявно.