C#에서 변환을 입력하십시오 : 키워드 및 강제 변환에 대한 포괄적 인 가이드 라인
인터페이스를 개발하는 동안 유형 변환 및 객체 변환이 일반적인 작업입니다. C#에는 주로이 전환을 달성하는 두 가지 방법이 있습니다 : 강제 변환 및
키워드. 이 두 기술의 목표는 데이터 유형을 변경하는 것이지만, 이들 사이에는 미묘한 차이가있어 프로그램 운영에 영향을 미칩니다.
강제 변환 as
필수 변환은 한 객체를 한 유형에서 다른 유형으로 변환하는 것을 말합니다. 이것은 문법 를 통해 달성 될 수 있으며, 여기서 는 필요한 데이터 유형을 나타내며,
는 우리가 변환하려는 변수입니다. 예를 들면 :
as
이 코드는 에 저장된 개체를 로 변환하고 변수 에 할당해야합니다. 변환이 성공하면 에는 이제 기본 이상이 발생합니다.
키워드
의무 변환과 달리 키워드는 보안 변환을 실행하고 변환이 실패하면 가 반환됩니다. 이것은 비정상적인 위험을 피하고 항공 보안 코드를 작성할 수 있습니다.
이 코드에서 에서 (目标类型)对象
로의 변환이 성공적이면 변수 目标类型
는 변환 오브젝트를 참조합니다. 변환이 실패하면 가 에 할당됩니다. 변환이 실패하고 우아하게 가치를 처리하고 싶을 때이 방법을 권장합니다. 对象
성능 충격
1 | _myCls1 = (MyClass)_MyObj;
|
로그인 후 복사
성능 측면에서, Modern Instant (JIT) 컴파일러는 강제 변환과 키워드를 최적화하여 성능을 유사하게 만듭니다. 의무적 인 전환은 경우에 따라 약간 더 빠를 수 있지만 차이는 약간 중요하지 않으며 프로그램 성능에 크게 영향을 미치지 않습니다. _MyObj
권장 메소드 MyClass
어떤 유형의 변환 방법이 더 나은지 특정 사용 사례에 따라 다릅니다. 전환이 성공할 것이라고 확신한다면 필수 전환은보다 효율적인 선택을 제공합니다. 그러나 변환이 실패하거나 _myCls1
값을 안전하게 처리하려면 키워드가 더 안전한 선택입니다. _myCls1
일반적으로 말하면, 다음 표준이 도움이 될 수 있습니다
MyClass
전환이 성공할 것이며 최대 성능이 필요하다는 연락을 취하십시오. InvalidCastException
변환이 실패하거나
값을 안전하게 처리하려는 경우 키워드를 사용하십시오.
를 사용하지 않는 다음 불필요한 유형의 검사를 도입하고 성능을 줄일 수 있기 때문에 를 사용하지 마십시오.
as
위 내용은 C#에서 캐스팅 vs.`AS ': 언제 어느 것을 사용해야합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!