请考虑以下代码:
declare
class Test
attr L
meth init L:=nil end
meth put(X) {Browse @L} end
meth get {Browse @L} end
meth isEmpty @L==nil end
meth getList @L end
meth setNil L:=nil end
meth union(C) {Browse @L} end
end
当我编译这个类时,给出错误:语句位置的表达式。我正在检查我的小代码大约一个小时来修复这个错误,但没有运气。请帮我找到问题所在。 谢谢。
答案 0 :(得分:3)
你的方法无法返回一些东西! isEmpty
和getList
应为
meth isEmpty(R) R=(@L==nil) end
meth getList(R) R=@L end
你可以使用
T={New Test init}
{Browse {T isEmpty($)}}
做'好像它有一个返回值'
实际上{Browse {T isEmpty($)}}
与
相同
local R in {T isEmpty(R)} {Browse R} end