【发布时间】:2011-08-02 02:45:16
【问题描述】:
获取此代码:
class Register(var value:Int = 0) {
def getZeroFlag() : Boolean = (value & 0x80) != 0
}
object Register {
implicit def reg2int(r:Register):Int = r.value
implicit def bool2int(b:Boolean):Int = if (b) 1 else 0
}
我想这样使用它:
val x = register.getZeroFlag + 10
但我很高兴:
type mismatch; found : Boolean required: Int
发生了什么?我是否需要定义一个隐含的函数来返回一个布尔值?
【问题讨论】:
标签: scala implicit implicit-conversion