Результаты поиска по запросу "implicit-conversion"
http://cgit.freedesktop.org/libreoffice/core/tree/compilerplugins/clang
вел серьезный рефакторинг некоторого кода C ++ и обнаружил многочисленные ошибки, возникающие в результате неявных преобразований, о которых я не знаю. примерstruct A *a(); bool b() { return a(); } void c() { int64_t const d(b()); } вопросыВbтип ...
не работает. Для выполнения преобразования применяется правило единого идентификатора, т. Е. Вам необходимо импортировать явный метод в область действия, даже если он определен в сопутствующем объекте.
у object MyString { implicit def stringToMyString(s: String) = new MyString(s) } class MyString(str: String) { def camelize = str.split("_").map(_.capitalize).mkString override def toString = str } object Parse { def main(args: Array[String]) { ...
, который просто позволяет неявное приведение к
мер: operator bool() const { return col != 0; }col является инт. Какoperator bool() const работай?
Спасибо, это дало мне больше ясности
пост предназначен для использования в качестве часто задаваемых вопросов, касающихся неявного целочисленного продвижения в C, особенно неявного продвижения, вызванного обычными арифметическими преобразованиями и / или целочисленными ...
Отличный ответ, приятно видеть ссылки на дальнейшие объяснения.
отрим этот код, struct A {}; struct B { B(const A&) {} }; void f(B) { cout << "f()"<<endl; } void g(A &a) { cout << "g()" <<endl; f(a); //a is implicitly converted into B. } int main() { A a; g(a); }Этоткомпилирует нормально ...
Почему implicitConversions требуется для неявных определений, но не для классов?
Насколько я понимаю, неявные преобразования могут привести к потенциально трудному для понимания коду или коду, страдающему от других проблем (возможно, даже ошибок?), Поэтому им требуется явное включение для использования в коде без получения ...
Боюсь, что даже ответ на ваш бонусный вопрос «вы не можете».
ли способ в C # добавитьнеявныйпреобразования в типы, уже определенные в других сборках? Например, если я использую две разные сборки, каждая из которых предоставляет своиVector3 structи использовать его в своих API, было бы неплохо ...