"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > C#의 Structs 목록에서 개별 요소를 어떻게 수정할 수 있습니까?

C#의 Structs 목록에서 개별 요소를 어떻게 수정할 수 있습니까?

2025-03-24에 게시되었습니다
검색:997

How Can I Modify Individual Elements in a List of Structs in C#?

structs와 같은 값 유형으로 작업 할 때 각 값 유형 변수 또는 참조는 구조물의 뚜렷한 인스턴스를 나타냅니다. List 요소에서 Sprstem Obitem = MyList [1]과 같은 새 변수로 값을 할당하면 복사 된 멤버가있는 새 인스턴스가 생성됩니다. Obitem으로 만들어진 모든 수정은 MyList의 원래 요소에 영향을 미치지 않습니다.

이 동작은 가치 유형의 의미에서 비롯됩니다. 값 유형을 새 변수에 할당하거나 인수로 전달할 때 새 인스턴스가 생성되고 값이 복사됩니다. 이는 참조로 수정이 원래 객체에 영향을 미치는 클래스와 같은 참조 유형과 대조적입니다.

스트러크 목록에서 개별 요소를 수정하는 문제를 해결하려면 한 가지 접근 방식은 구조물이 구조를 구조화하는 인터페이스를 정의하고 해당 인터페이스를 사용하여 구조물에 액세스하는 것입니다. 이를 통해 상자에 걸친 객체를 가리키는 인터페이스 참조를 통해 실제 구조물을 수정할 수 있습니다.

다음 코드 스 니펫은이 기술을 보여줍니다. { 문자열 이름 {set; } } Public Struct MyStruct : ImystructModifier { 공개 문자열 이름 {get; 세트; } } List oblist = new List 이 메소드를 사용하면 인터페이스 참조를 통해 목록에서 원래 구조물을 수정할 수 있습니다. Structs는 성능 혜택을 제공하며 불변성 또는 작은 메모리 발자국이 필요할 때 선호됩니다. 그러나 목록에서 요소를 수정하는 것이 요구 사항이라면 클래스가 더 적합한 옵션 일 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3