Если у меня есть это:строковый литерал и память представление
string str = "string";
мы можем сказать, что в куче создается объект типа string
, который содержит "string"
?
или
делают CLR, благодаря интернирования, создает что буквальная в стажер пула, который ссылается внутри str
объекта?
так, в основном, это, образно, правильно:
str --> [ methods, fields, ..., "string"]
или это правильно?
str --> [ methods, fields, ..., ---> "string"]
где [ ]
представляет объект.
Наверняка вы можете предоставить некоторые доказательства ваших исследований ... –
это зависит. значение '' string "', скорее всего, в сегменте данных, поскольку оно является константой, а не в куче –
Возможно, он не знал, где искать ... Ради сохранения этого вопроса и сайта ответа. Дайте ему посмотреть [здесь] (http://csharpindepth.com/Articles/General/Strings.aspx) – Dbuggy