더북(TheBook)

3.4.4 우선순위와 그룹핑

지금까지 설명한 연산자는 모두 C와 동일한 우선순위(precedence)와 결합 법칙(associativity)을 갖고 있다. (이 부분은 파싱을 배울 때 좀 더 정확하게 이해될 것이다.) 원하는 우선순위가 아니면 ()를 사용할 수 있다.

var average = (min + max) / 2;

연산자의 우선순위와 결합 법칙은 기술적으로 별로 재밌는 주제는 아니라서 일반적인 프로그래밍 책에 나오는 연산자 퍼레이드는 록스에서 없앴다. 즉, 록스에는 비트 연산자(bitwise operator), 시프트 연산자(shift operator), 모듈로 연산자(modulo operator), 조건부 연산자(conditional operator)가 없다. 내가 여러분에게 학점을 주는 교수님은 아니지만, 여러분 스스로 록스 구현체에 이런 연산자를 추가/보강한다면 내 마음속의 보너스 학점을 받게 되리라.

연산자는 (나중에 배울 몇몇 특정 기능과 관련된 두어 가지를 제외하면) 표현식의 형식을 가진다. 이제 한 레벨 위로 올라가자.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.