Вопросы с тегом «implicit-conversion»

Преобразование объекта, переменной или значения из одного типа в другой, чтобы удовлетворить ограничению типа, без специального запроса этого преобразования с помощью синтаксиса языка.

398
Где Scala ищет последствия?

Неявный вопрос новичков в Scala , кажется: где же компилятор ищет implicits? Я имею в виду неявный, потому что вопрос никогда не кажется полностью сформированным, как будто не было слов для этого. :-) Например, откуда integralвзялись значения ниже? scala> import scala.math._ import scala.math._...

187
Неявное преобразование Objective C теряет целочисленную точность «NSUInteger» (иначе «unsigned long») к предупреждению «int»

Я работаю над некоторыми упражнениями и получил предупреждение, в котором говорится: Неявное преобразование теряет целочисленную точность: «NSUInteger» (он же «unsigned long») в «int» #import <Foundation/Foundation.h> int main (int argc, const char * argv[]) { @autoreleasepool { NSArray...

146
Почему я могу передать 1 как короткую, а не переменную int i?

Почему первая и вторая запись работает, но не последняя? Есть ли способ, которым я могу разрешить все 3 из них и определить, было ли это 1, (int) 1 или я передал? И действительно, почему один разрешен, но последний? Второе позволение, но не последнее действительно поражает меня. Демо, чтобы...

94
Неявное преобразование и класс типа

В Scala мы можем использовать как минимум два метода для модификации существующих или новых типов. Предположим, мы хотим выразить, что что-то можно количественно оценить с помощью Int. Мы можем определить следующую черту. Неявное преобразование trait Quantifiable{ def quantify: Int } И затем мы...

87
Почему printf («% f», 0); дать неопределенное поведение?

Заявление printf("%f\n",0.0f); печатает 0. Однако заявление printf("%f\n",0); печатает случайные значения. Я понимаю, что проявляю какое-то неопределенное поведение, но не могу понять почему. Значение с плавающей запятой, в котором все биты равны 0, по-прежнему допустимо floatсо значением 0....

21
Неявное преобразование не допускается при возврате

#include <optional> bool f() { std::optional<int> opt; return opt; } Не компилируется: 'return': cannot convert from 'std::optional<int>' to 'bool' Консультационная справка Я бы подумал найти объяснение, но я прочитал его, как должно быть в порядке. Неявные преобразования...

11
Вызов лямбда неоднозначен, несмотря на явное указание типа возврата

Перегруженная функция должна принимать оба функтора, учитывая, что тип лямбды можно разрешить (можно преобразовать в std::function(пожалуйста, исправьте меня, если я ошибаюсь). Вопрос в том, почему ниже приведена ошибка компиляции, несмотря на то, что лямбда-тип явно определен? ( [&]() ->...

9
Как избежать неявных преобразований из int (0) в указатель в векторе

Есть ситуация, когда я хочу собрать все имена узлов пути к ключу в JSON. Рассмотрим условие индекса массива «0», «1» также допускается, но легко забыть кавычки, которые могут привести к сбою при разыменовании. Поэтому я хочу отказаться от этого. Пример: #include <vector> #include...