用户定义类型作为参考

User defined type as reference

这两个定义等价吗?

type
  PersonObj = object
    name: string
    age: int
  PersonRef = ref PersonObj

type
  PersonObj = ref object
    name: string
    age: int

在后者中,PersonObj 应该简称为 Person 吗?

它们不等价,因为第一个 PersonObj 不是 ref,而第二个是。等同于第二个定义应该读作

type PersonRef = ref object
  name: string
  age: int

现在 ObjRef 后缀由您自己决定。如果类型总是用作值类型或引用类型,通常不使用后缀,所以它只是:

type Person = ref object
  name: string
  age int