문제

대부분의 프로그래밍 언어 있는 테이블의 우선 순위와 연관성에 대한 바이너리 연산자입니다.연관성이 중요한 어떤 경우에는 예: (a - b) - c != a - (b - c).

그러나,대한 연관 같은 연산자 && 그것은 것 같지 문제,그러나 대부분의 언어 목록이 왼쪽으로 연합.

이 있는 상황이 실제로 사이의 차이 (a && b) && ca && (b && c)?

도움이 되었습니까?

해결책

내가 믿을 수 없어 너무 많은 잘못된(삭제)답변...어쩌면 내가 응답해야 한다.

첫째, 우선 순위!= 연관성!= 평가 순서.

이제는 우리가 그 밖의 방법:연관성에서 중요 한 경우가 있습니다.
a + b + c,중요한 경우 a, b, 고 c 은 부동 소수점 대신 정수기 때문에,반올림 오류를 축적 방법에 따라 다르게 용어는 그룹화됩니다.

에 대한 특정 사례의 &&||, 상관없 한지는 오버로드 (가능한 C++,C)하지만 언어가 여전히 정의 하나는 그냥 일관성을 위해-그리고 그래서는"나"표현의 코드(에 따라 문법)가 유일하다.그것은 또한 밖으로 작동하는 혜택의 C++부터 지금의 의미를 오버로드 &&|| 지 않는 모호합니다.

다른 팁

추가@Mehrdads@응답(나회가 직접 참여 할 수있):

만약 당신이 이제까지 구성 분석에,당신은 당신의 사업자가 연관성,그렇지 않으면

a && b && c

단순히 구문 오류가 있습니다.가정을 위해야 하지 않을 구문 오류,결정해야 합니다면 그것은 의미한다:

(a && b) && c

a && (b && c)

할 수 없습니다 단지 말:나는 걱정하지 않는다.

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