문제

내가 사용하고 싶지 않은 상황이 있나요? AndAlso 연산자보다는 And 운영자?...또는 사용하고 싶지 않은 경우 OrElse 연산자보다는 Or 운영자?

도움이 되었습니까?

해결책

에서 MSDN:

단락 트레이드오프

단락은 논리 연산의 결과를 변경할 수 없는 표현식을 평가하지 않음으로써 성능을 향상시킬 수 있습니다.그러나 해당 표현식이 추가 작업을 수행하는 경우 단락은 해당 작업을 건너뜁니다.예를 들어, 표현식에 Function 프로시저에 대한 호출이 포함된 경우 표현식이 단락되면 해당 프로시저는 호출되지 않으며 Function에 포함된 추가 코드는 실행되지 않습니다.프로그램 논리가 추가 코드에 의존하는 경우 단락 연산자를 피해야 합니다.

다른 팁

And 연산자 대신 AndAlso 연산자를 사용하고 싶지 않은 상황이 있습니까?

확신하는:그걸 확인하고 싶다면 둘 다 표현식의 측면이 평가됩니다.예를 들어 양쪽 모두 부작용이 있는 다른 작업의 결과로 부울 값을 반환하는 메서드 호출인 경우가 이에 해당할 수 있습니다.

그러나 일반적으로 사용 AndAlso/OrElse 당신이 사용할 때마다 &&/|| 물론 대부분의 경우 C/C++/C#에서 사용됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top