Scala方法以_ =结尾
发布时间:2020-12-16 08:49:15 所属栏目:安全 来源:网络整理
导读:我似乎记得 Scala处理以_ =特殊结尾的方法,所以像这样: object X { var x: Int = 0; def y_=(n : Int) { x = n }}X.y = 1 应该调用X.y _ =(1).但是,在2.8.0 RC1中,我收到一条错误消息: console:6: error: value y is not a member of object X X.y = 1 ^
我似乎记得
Scala处理以_ =特殊结尾的方法,所以像这样:
object X { var x: Int = 0; def y_=(n : Int) { x = n }} X.y = 1 应该调用X.y _ =(1).但是,在2.8.0 RC1中,我收到一条错误消息: <console>:6: error: value y is not a member of object X X.y = 1 ^ 有趣的是,只是尝试调用没有括号的方法也失败了: scala> X.y_= 1 <console>:1: error: ';' expected but integer literal found. X.y_= 1 ^ 我错误地记得确实存在的东西,或者我只是用整块发明它? 解决方法
这是Scala中的一个角落案例.没有吸气剂你就不能有一个定位器,反之亦然.
以下工作正常: scala> object X { | var x: Int = 0 | def y = x | def y_=(n: Int) { x = n } | } defined module X scala> X.y = 45 scala> X.y res0: Int = 45 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |