未检查数组
UncheckedArray[T] 类型是一种特殊的 array “数组”,编译器不检查它的边界。这对于实现定制灵活大小的数组通常很有用。另外,未检查数组可以转换为不确定大小的 C 数组:
type
MySeq = object
len, cap: int
data: UncheckedArray[int]
生成的 C 代码大致是这样的:
typedef struct {
NI len;
NI cap;
NI data[];
} MySeq;
未检查数组的基本类型可能不包含任何 GC内存,但目前尚未检查。
未来方向: 应该在未检查的数组中允许 GC内存,并且应该有一个关于 GC 如何确定数组的运行时大小的显式注解。
当前内容版权归 vectorworkshopbaoerjie 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 vectorworkshopbaoerjie .