Превращение строки в ссылку на объект - C#
Формулировка задачи:
Всем привет, вопрос может простой,а может это и не возможно.. Искал, но ничего особо не нашел по этому поводу, вероятно не понимаю как сформулировать вопрос. Суть:
Думаю из примера понятно, что я хочу. То есть например получить строку, а потом как то использовать её как ссылку на экземпляр.. То есть в итоге, например, запускать цикл, брать счетчик из цикла, его значение склеивать со строкой, например my_obj = "text" + i.ToString() , а потом как то обращаться к полю (value) экземпляра, типа my_obj.value = "..."
Заранее извиняюсь, за такое сумбурное содержания вопроса, но надеюсь он понятен. И Благодарю за ответ)
class Program
{
static void Main(string[] args)
{
text text1 = new text(); //создаем экземпляры
text text2 = new text();
text text3 = new text();
text text4 = new text();
text text5 = new text();
string str = "text3";
Console.WriteLine(text1.val); //обращаемся к полям экземпляров
Console.WriteLine(str.val); //Я понимаю, что эта запись - бред, но как то можно использовать строку как имя экземпляра?
}
}
class text
{
public string val = "TEST";
}Решение задачи: «Превращение строки в ссылку на объект»
textual
Листинг программы
Dictionary<string, text> texts = new Dictionary<string, text>(); texts["text1"] = new text(); texts["text2"] = new text(); texts["text3"] = new text(); texts["text4"] = new text(); texts["text5"] = new text(); string str = "text3"; Console.WriteLine(texts[str].val);