преобразование из double в float требует сужающего преобразования
Я получаю ошибку, указанную в заголовке для каждого элемента. Почему?
Потому что вы строите вектор чисел с плавающей запятой, используя двойные литералы. Такое преобразование сужается.
Тем не менее, такие преобразования разрешены в этом контексте, и пример сформирован правильно и должен компилироваться. Я подозреваю, что вы использовали некоторые параметры компилятора, чтобы попросить компилятор не компилировать некоторые правильно сформированные программы.
Вы можете написать литерал с плавающей запятой, добавив f
к двойному литералу.