pow
에 대한 **
구문을 매우 좋아합니다. 많은 언어 (예 : Python)로 제공됩니다.스칼라를위한`**`파워 연산자 생성하기?
Scala 'base'코드를 수정하지 않고 이것을 Scala에 도입 할 수 있습니까? Int
에서
내 시도 하나 :
가import scala.math.pow
implicit class PowerInt(i: Int) {
def `**`(n: Int, b: Int): Int = pow(n, b).intValue
}
이 (가 IDEone에 실패 참조)이 나를 위해 작동
주'이 **'도'^'올바른 우선 순위를 (즉, 이유가 없습니다 이유는 다음 stdlib 그것을 포함하지 않습니다). '4 * 5 ** 3'는'4 * (5 ** 3)'이 아니라'(4 * 5) ** 3'입니다. – sschaef
스칼라는 구문 분석 방법을 비 LL (1) 문법으로 변경할 수 있습니다. 예 : C++이 여러 개의'>''< '를 어떻게 처리하는지보십시오. –