Section 32.1: Boxing 된 값 타입 변환하기
Boxing 된 값 타입은 원래의 타입으로만 Unboxing 이 가능하며, 이 제약은 두 타입간에 유효한 타입 변환 (valid conversion) 이 존재한다고 해도 마찬가지로 적용된다. 다음 예제를 확인한다:
object boxedInt = (int)1; // int 값이 object 로 Boxing 되었다
long unboxedInt1 = (long)boxedInt; // 유효하지 않은 타입 변환이다
이러한 경우, 먼저 원래의 타입으로 Unboxing 을 수행한 후 타입 변환을 하는 방법을 사용할 수 있다. 다음 예제를 확인한다:
long unboxedInt2 = (long)(int)boxedInt; // 유효한 변환이다
본 문서는 C# Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.
[출처] https://books.goalkicker.com/CSharpBook/
'번역 > C# Notes for Professionals' 카테고리의 다른 글
32.3: 불변 참조 타입 (Immutable reference type) - string (0) | 2021.11.17 |
---|---|
32.2: Boxing 된 값 타입 비교하기 (0) | 2021.11.04 |
31.5: 메소드에서 ref 와 out 파라미터의 차이 이해하기 (0) | 2021.10.29 |
31.4: Reference 타입에 대한 할당 (assignment) 작업 (0) | 2021.10.28 |
31.3: ref 파라미터와 out 파라미터 비교 (0) | 2021.10.21 |