그래서 C#으로 전달되는 매개 변수에 관한 Jon Skeet의 기사를 읽었으며 참조 형식이 작동하는 방식을 설명하기 위해 다음 예제를 만들었지 만 주위에 머리를 감쌀 수 없습니다.참조 형식에 대한 설명이 필요합니다
StringBuilder first = new StringBuilder();
first.Append("hello");
StringBuilder second = first;
first.Append(" world");
first = new StringBuilder("goodbye");
Console.WriteLine(first); // Prints goodbye
Console.WriteLine(second); // Still prints hello world
우리는 우리가 단지 StringBuilder
객체의 참조에 그 값을 설정하는 second
변수의 값을 할당하는거야?
또한 보너스 질문으로 second
변수의 참조를 다른 것으로 변경하면 (예 : null 값으로 설정), StringBuilder
개체에 대한 참조를 복구 할 수 없습니까? 아니면 특정 유형의 모든 생성 된 객체를 검색 할 수있는 방법이 있습니까?
보너스 질문이 명확하지 않습니다. 다음과 같이하면된다 :'StringBuilder second = first; 두 번째 = null; '예를 들어? –
바로 그 뜻입니다. 명확하게 편집하겠습니다. –