[C#] 구조체 리스트에서 변수 직접 접근이 불가능해지는 현상

구조체리스트에 int형을 직접 접근하여 변수값을 변경하려하면 컴파일 에러가 발생한다.
이를 그냥 리스트를 가져오면 포인터가 아닌 복사 생성이 되어 실질적으로 변경된값이 바뀌지않았다.
그래서, 생성된 임시구조체에 값을 변경하고 해당리스트에 임시변수를 넣어준는 것으로 해결됬다.

구조체는 정적할당되어 생성되므로, 값을 넘길때 참조가 아닌 값이 참조가 된다.
그러므로, 해당값을 변경하기 위해서는 직접 생성자를 호출(new)하여 객체 내부의 값을 변경해야한다.

댓글

이 블로그의 인기 게시물

[gpt/gpt와 대화/번역]이미지생성형ai와 인공지능에 대하여

[AI요약/퍼플렉시티]게임산업의 침체와 한국게임업계의 희망

[C#]CS1612: 'List.this[int]'은(는) 변수가 아니므로 해당 반환 값을 수정할 수 없습니다.