如何在 Nim 中编写类似于 `echo` 的函数?

How to write function similar to `echo` in Nim?

我正在尝试为 echo 编写包装器,下面的代码不起作用,playground

import sequtils, strutils, sugar

proc p*(args: varargs[typed, `$`]): void =
  echo args.map((v) => $v).join(" ")

错误:

/usercode/in.nim(3, 8) Error: invalid type: 'typed' in this context: 'proc (args: varargs[typed])' for proc
import sequtils, strutils, sugar

proc p*(args: varargs[string, `$`]): void =
  echo args.join(" ")

varargs 接受类型 转换为 作为第一个参数,因此您的代码几乎是正确的,但您需要将 typed 替换为 string,然后函数调用基本上等同于p([$arg1, $arg2])

Nim 的示例 varargs - link