Инициализация массива структур: Array initializers can only be used in a variable or field initializer - C#
Формулировка задачи:
В С++ можно создать массив стркутур и тут же ее проинициализировать:
Пытаюсь тоже самое сделать на C#:
Выдает: "Array initializers can only be used in a variable or field initializer. Try using a new expression instead."
Как проще всего реализовать инициализацию?
struct AmplPalette { double Ampl; int R; int G; int B; } const AmplPalette palette[] = { {12.0, 0, 0, 140}, {18.0, 0, 0, 196}, {21.0, 38, 143, 224}, {26.0, 1, 252, 239}, {30.0, 0, 206, 0}, {35.0, 23, 255, 23}, {39.0, 255, 255, 0}, {42.0, 128, 0, 0}, {45.0, 232, 0, 0} };
public struct AmplPalette { public double Ampl; public int R; public int G; public int B; } public Color GetAmplToColor(double ampl) { const AmplPalette [] palette = { {12d, 0, 0, 140}, {18d, 0, 0, 196}, {21d, 38, 143, 224}, {26d, 1, 252, 239}, {30d, 0, 206, 0}, {35d, 23, 255, 23}, {39d, 255, 255, 0}, {42d, 128, 0, 0}, {45d, 232, 0, 0} }; }
Решение задачи: «Инициализация массива структур: Array initializers can only be used in a variable or field initializer»
textual
Листинг программы
new[] { new MyStruct ("a", 1), new MyStruct ("b", 5), new MyStruct ("q", 29) }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д