Инициализация массива структур: 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)
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д