-
Thread 1: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)ios/개발하다가 2022. 6. 13. 21:57728x90
Swift 코드의 맥락에서,
EXC_BAD_INSTRUCTION
일반적으로 컴파일러 트랩, 즉 런타임에 감지된 버그로 인해 컴파일러가 코드에 삽입한 정의되지 않은 명령어를 의미합니다. 가장 흔한 원인은 다음과 같다.
- optional 언래핑 실패 — 강제 언래핑(!) 또는 암시적 언래핑(nil인 암시적으로 unwrapped 옵셔널에 액세스)으로 인해
- 범위를 벗어난 배열
- 실패한 강제 캐스팅(as!), 값이 nil optional이거나 값이 잘못된 타입이기 때문에
옵셔널을 다룰 때, 목표는 그 옵셔널의 범위를 가능한 한 많이 제한하는 것이어야 한다 . 그렇게 하면 한 번만 풀기만 하면 되므로 한 곳에서만 실패할 수 있으므로 다른 모든 코드가 더 간단해집니다.
참고
728x90'ios > 개발하다가' 카테고리의 다른 글
'authorizationStatus()' was deprecated in iOS 14.0 (0) 2022.04.09