Добавления переменной в аргумент
Хотел узнать, как можно добавить переменную в аргумент?
Или нету такой возможности в С#?
P.s. Нужно (После запроса пользователя) обратится к User и показать имя, но если ввести 1 или 2 то он просто сделает это как строка, а не аргумент...
Сам код:
public class User
{
public string Name;
public int Value;
public static int Count;
public User (string n, int v)
{
Name = n;
Value = v;
Count = Count + 1;
}
}
public static void Main(string[] args)
{
User u1 = new User("Дмитрий", 10);
User u2 = new User("Егор", 20);
int ID;
ID = Int32.Parse(Console.ReadLine());
Console.WriteLine("u" + ID + ".Name");
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}
Ответы (1 шт):
Автор решения: PashaPash
→ Ссылка
Нет, по имени переменной обратится нельзя. Имена у локальных переменных есть только в исходном коде, после компиляции они исчезают. Можно сложить объекты в словарь и обращаться по ключу:
var users = new Dictionary<int, User>
{
{ 1, new User("Дмитрий", 10) },
{ 2, new User("Егор", 20) }
};
и выводить как
Console.WriteLine(users[ID].Name);