System::ExplicitCast 메서드

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 소스 타입과 결과 타입이 동일할 때 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::None, Result> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 간단한 생성자와 같은 캐스트가 필요할 때 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::Static, Result> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 예외 래퍼에 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::Exception, Result> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 객체를 예외로 캐스팅할 때 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::ObjectToException, Result> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 소스와 결과가 모두 스마트 포인터이며 결과 타입에 명시적인 SmartPtr<…>가 없을 때 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::Pointer, typename CastResult<Result>::type> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 소스와 결과가 모두 스마트 포인터이며 결과 타입에 명시적인 SmartPtr<…>가 있을 때 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::PointerToPointer, Result> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 객체를 nullable로 언박싱할 때 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::UnboxingToNullable, Result> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. nullable을 박싱할 때 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::NullableBoxing, Result> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. nullable 객체를 언박싱할 때 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::NullableUnboxing, Result> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 열거형을 박싱할 때 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::EnumBoxing, SmartPtr<BoxedValueBase>> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 값 타입을 힙에 복사하여 스마트 포인터로 참조해야 할 때 사용됩니다 (인터페이스 타입으로 제네릭을 제한하고, 해당 인터페이스를 구현하는 구조체로 특수화된 경우).

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::HeapifyBoxing, typename CastResult<Result>::type> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 값 타입에서 인터페이스를 가져올 때 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::InterfaceBoxing, typename CastResult<Result>::type> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 일반적인 박싱에 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::Boxing, typename CastResult<Result>::type> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. System::String 박싱에 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::StringBoxing, typename CastResult<Result>::type> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 인터페이스를 언박싱할 때 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::InterfaceUnboxing, Result> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 일반적인 언박싱에 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::Unboxing, Result> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. nullptr 캐스팅에 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::Null, typename CastResult<Result>::type> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(const Source&) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 배열 간 캐스팅에 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::Array, typename CastResult<Result>::type> System::ExplicitCast(const Source &value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueconst Source&Object 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기

System::ExplicitCast(Source) method

명시적 캐스트를 사용하여 소스 타입을 결과 타입으로 변환합니다. 원시 포인터를 스마트 포인터로 캐스팅할 때 사용됩니다.

template<typename Result,typename Source> std::enable_if_t<Details::CastType<Source, Result>::RawPointer, typename CastResult<std::remove_pointer_t<Result>>::type> System::ExplicitCast(Source value)
매개변수설명
소스소스 유형.
Result결과 유형.
매개변수형식설명
valueSourceObject 캐스팅용.

ReturnValue

캐스팅 결과.

또 보기