我正在尝试为echo下面的代码编写包装器不起作用,操场
import sequtils, strutils, sugar
proc p*(args: varargs[typed, `$`]): void =
echo args.map((v) => $v).join(" ")
Run Code Online (Sandbox Code Playgroud)
错误:
/usercode/in.nim(3, 8) Error: invalid type: 'typed' in this context: 'proc (args: varargs[typed])' for proc
Run Code Online (Sandbox Code Playgroud)
Kam*_*nji 10
import sequtils, strutils, sugar
proc p*(args: varargs[string, `$`]): void =
echo args.join(" ")
Run Code Online (Sandbox Code Playgroud)
varargs接受类型转换为作为第一个参数,所以你的代码几乎是正确的,但你需要更换typed有string,然后函数调用将相当于p([$arg1, $arg2])基本。
Nim 示例varargs-链接