Learning
When: 1학년 8월 4일
How: 백준 문제를 풀다가 ArgumentOutOfRange 런타임 에러가 났는데 무슨 에러인지 잘 몰랐기 때문에 공부를 해보았더니 배열에 인덱스를 잘못 전달했을 때 생기는 에러와 비슷하다는 것을 알아서 그 차이도 공부하게 되었습니다.
Understanding:
- 정의 : 짧게 Argument라고 부르면 이 에러는 크기가 10짜리인 배열이 있다고 했을 때
인덱스 값 15에 해당하는 값에 접근하면 생기는 IndexOutOfRangeException과 비슷하게,
값이 10개 밖에 안 들어있는 가변 배열 자료형(List, Queue 등)에서 인덱스 값 15에
해당하는 값에 접근하면 생기는 런타임 에러입니다. - 생기는 상황 : 컬렉션 자료형에서 list[0] 이런 식으로 인덱스 값을 잘못 써서 생기는 경우도
있지만 list.Remove() 메서드 같은 메서드에서 인수로 잘못된 값을 넣어도 생깁니다.
Result: 백준을 풀 때 문자와 관련된 문제가 자주 나오는 것 같아 리스트 같은 컬렉션 자료형들의 기본적인 지식을 더욱 공부해야겠다는 생각이 들었습니다.
'C#' 카테고리의 다른 글
| [C#] SOLID 원칙 (2 : O/OCP) (3) | 2025.08.06 |
|---|---|
| [C#] SOLID 원칙 (1 : S/SRP) (3) | 2025.08.05 |
| [C#] 스프라이트 라이브러리(Sprite Library), Sprite Resolver (2) | 2025.07.30 |
| [C#] Queue 자료형, 자료 구조 (1) | 2025.07.29 |
| [C#] 구조체 (struct) (7) | 2025.07.28 |