Не работает приведение типов по индексу в массивах?

355
18 июня 2017, 15:10
ToVideoArray[i] = Convert.ToInt32((SliderArray[s1]));

Не работает приведение типов по индексу в массивах, выдает ошибку, что нет явного приведения типов, хотя я его указал:

Ошибка CS0266 Не удается неявно преобразовать тип "double" в "int". Существует явное преобразование (возможно, пропущено приведение типов).

Пытался и так:

 ToVideoArray[i] = Convert.ToInt32((SliderArray[s1]));

Уточнение: SliderArray[s1] возвращает double

s1 – типа double

ToVideoArray – массив типа int

i – индекс типа int

Answer 1

Индексатор в массиве принимает int. В данном случае

SliderArray[s1]

идет попытка передать double

s1 - типа double

Следовательно, перед передачей, нужно привести эту переменную к int, например явно: (int)s1

В итоге должно выйти

ToVideoArray[i]= Convert.ToInt32(SliderArray[(int)s1]);
READ ALSO
По нажатию Button отключить свойство Form1 Resize

По нажатию Button отключить свойство Form1 Resize

В Form1_Resize есть функции которые меняют вид компонентов при изменении размера формы/фреймаКак по нажатию на Button отключить Form1_Resize чтобы его...

275
как добавить в список определенное кол-во вещей

как добавить в список определенное кол-во вещей

как добавить в список определенное кол-во вещей

255
Почему не видит пространство имён?

Почему не видит пространство имён?

Это пространство имён существуетДо этого работало

431
XHR и получение результата C#

XHR и получение результата C#

ЗдравствуйтеЕсть сайт, где содержимое страницы подгружается с использованием ajax (по-моему)

317