Nim lang 错误:表达式没有地址

Nim lang 错误:表达式没有地址,nim-lang,Nim Lang,错误: # lines 11-12: proc last[T](ll: seq[T]): var T = return ll[high(ll)] # line 118: if last(formula)["state"] == c_empty: 编译器想要什么?[]不返回变量 不过,我认为您不需要在这个代码段中用var注释任何内容,因为没有任何内容发生变化。如果需要,在调用站点指定var 如果可以的话,以后尝试提交可编译的示例。您还可以通过执行列表[^1]为最后一个元素编制索引,并通过执

错误:

# lines 11-12:
proc last[T](ll: seq[T]): var T =
  return ll[high(ll)]

# line 118:
if last(formula)["state"] == c_empty:

编译器想要什么?

[]
不返回变量

不过,我认为您不需要在这个代码段中用var注释任何内容,因为没有任何内容发生变化。如果需要,在调用站点指定var


如果可以的话,以后尝试提交可编译的示例。

您还可以通过执行列表[^1]为最后一个元素编制索引,并通过执行列表[^2]为之前的元素编制索引。不久前,我有一个相关的示例,可能也会有所帮助。
main.nim(118, 12) Info: template/generic instantiation from here    
main.nim(12, 12) Error: expression has no address