类型系统现状
玄铁具备完备的静态类型关键字。目前在编译期与运行时实际发挥作用的核心类型如下:
- 基本数据类型:
整(Int/i64):整数类型,广泛用于算术运算、索引等。小数(Float/double):浮点数类型。字(String/%XTString):字符串对象引用。布尔(Bool/i1):布尔类型,用于控制流和条件判断。
- 复合/数据结构类型:
数组(Array/%XTArray):动态数组引用。字典(Dict/%XTDict):哈希表/字典引用。
- 高级抽象类型:
结果(Result):用于包装操作成功/失败的状态类型(详见 01_结果类型与错误处理.md)。任务(Task):异步执行的任务句柄。字节(Bytes):用于底层内存、文件或网络 I/O 操作的原始字节流。
泛型
玄铁支持在 型 和 函 中定义泛型参数,使用 <T> 语法。泛型参数可以是任意标识符,实例化时传入具体类型(如 <整>、<字>)。当前编译器采用类型擦除策略,泛型主要提供语法层面的类型参数化能力。
- 泛型类:
型 容器<T> { 设 内容: T ... }— 定义可复用容器类 - 泛型函数:
函 交换<T>(a: T, b: T) { 返 [b, a] }— 定义类型参数化函数 - 实例化:
造 容器<整>(123)/交换<整>(10, 20)— 传入具体类型参数 - 可空修饰:
?紧跟在类型后,修饰紧邻类型——节点?(节点可空)、数组<节点?>(元素可空)、数组<节点>?(数组可空)
详细语法说明、教程与示例代码请参阅:03_泛型编程指南.md