Инициализация константного массива из элементов кортежа - C#
Формулировка задачи:
Как правильно создать константный массив из элементов кортежа?
(я пробовал создать не константный)
в результате должно получиться примерно следующее:
Пробовал с помощью object, но не понял как потом используя foreach извлечь нулевой элемент типа string и первый элемент типа bool.
Еще неплохо было бы если бы пояснили что значит запятая в [] и обязательно ли создавать нужный мне массив\тип данных через new.
private Tuple<string, bool>[] CommandList = new Tuple<string, bool>[]
{
{ "MEMINC", true },
{ "MEMDEC", true },
{ "BYTEINC", true },
{ "BYTEDEC", true },
{ "OUTPUT", false },
{ "INPUT", false },
{ "WHILE", false },
{ "END", false }
}; private object[,] CommandList =
{
{ "MEMINC", true },
{ "MEMDEC", true },
{ "BYTEINC", true },
{ "BYTEDEC", true },
{ "OUTPUT", false },
{ "INPUT", false },
{ "WHILE", false },
{ "END", false }
};
private bool ValueRequired(string command)
{
foreach (object element in CommandList)
{
//
}
return false;
}Решение задачи: «Инициализация константного массива из элементов кортежа»
textual
Листинг программы
public static class TupleListExtensions
{
public static void Add<T1, T2>(this IList<Tuple<T1, T2>> list,
T1 item1, T2 item2)
{
list.Add(Tuple.Create(item1, item2));
}
public static void Add<T1, T2, T3>(this IList<Tuple<T1, T2, T3>> list,
T1 item1, T2 item2, T3 item3)
{
list.Add(Tuple.Create(item1, item2, item3));
}
public static void Add<T1, T2, T3, T4>(this IList<Tuple<T1, T2, T3, T4>> list,
T1 item1, T2 item2, T3 item3, T4 item4)
{
list.Add(Tuple.Create(item1, item2, item3, item4));
}
// and so on...
}