• 泛型推导限制

    泛型推导限制

    类型 var Ttypedesc [T] 不能在泛型实例中推断出来。以下是不允许的:

    1. proc g[T](f: proc(x: T); x: T) =
    2. f(x)
    3.  
    4. proc c(y: int) = echo y
    5. proc v(y: var int) =
    6. y += 100
    7. var i: int
    8.  
    9. # 允许:推断 'T' 为 'int' 类型
    10. g(c, 42)
    11.  
    12. # 无效:'T'不推断为'var int'类型
    13. g(v, i)
    14.  
    15. # 也不允许:通过'var int'进行显式实例化
    16. g[var int](v, i)