Результат компиляции промежуточного значения строки - C#
Формулировка задачи:
Доброго дня форумчанам.
Уж не знаю, как точнее назвать тему, потому, если кому-то не нравится - извольте.
Заинтересовал вопрос, в какие инструкции компилируется следующий код:
Мои размышления:
1) Либо при каждом обращении по индексу, создаётся новый экземпляр строки, куда копируются соответствующая из
string tmp = string.Empty; List<string> someList = new List<string>(){ "Маша", "Даша", "Саша", "Юля", "Майя" }; //и пр. for(int i = 0; i < 5; i++) { tmp = List[i]; }
List
, который, в свою очередь, копируется вtmp
; 2) То же самое, что и в первом, только строки не копируются, а копируются указатели 3) При каждом обращении по индексу, полученное значение копируется сразу вtmp
, без создания строки-посредника. 4) То же, что и в 4, только копируются не значения, а ссылки на уютное место в памяти? Проясните пожалуйстаРешение задачи: «Результат компиляции промежуточного значения строки»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication2 { class Program { static void Main(string[] args) { string tmp = string.Empty; List<string> someList = new List<string>() { "Маша", "Даша", "Саша", "Юля", "Майя" }; for (int i = 0; i < 5; i++) { tmp = someList[i]; } } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д