우리 모두 알고 있듯이 문자열은 암시 적으로 인스턴스화됩니다. 즉, 하나의 객체에 대한 참조를 얻기 위해 new
을 사용할 필요가 없음을 의미합니다. 이 첫 번째 줄이 나타납니다 그러나ldstr은 newobj를 내부적으로 구현합니까?
String first = new String(new char[] {'a'});
string second = "a";
: 때문에 항상 틀이를 돌보고있다, 나는 이런 식으로 뭔가를 한 경우에 따라서 나는 동일한 IL를 얻을 것이라는 나의 믿음이었다이의
newobj instance void [mscorlib]System.String::.ctor(char[])
및 두 번째 ldstr "a"
을 사용하여 완료했습니다.
문자열 참조를 얻으려면 ldstr
은 내부적으로 newobj
으로 전화를 걸 수 있으며이를 뒷받침 할 세부 사양/세부 정보는 어디에서 볼 수 있습니까?
감사합니다. @Brian, 전 문서가 어디에 있는지 몰랐습니다! –