Rust 程序设计语言 简体中文版 1.85.0
y: T, } fn main() { let integer = Point { x: 5, y: 10 }; let float = Point { x: 1.0, y: 4.0 }; } 示例 10-6:Point 结构体存放了两个 T 类型的值 x 和 y 在结构体定义中使用泛型的语法类似于函数定义中使用泛型。首先,必须在结构体名称后面的 尖括号中声明泛型参数的名称 { let wont_work = Point { x: 5, y: 4.0 }; } 示例 10-7:字段 x 和 y 的类型必须相同,因为它们都有相同的泛型类型 T 在这个例子中,当把整型值 5 赋值给 x 时,就告诉了编译器这个 Point实例中的泛型 T 全 是整型。接着指定 y 为浮点值 4.0,因为 y 被定义为与 x 相同类型,所以将会得到一个像这 样的类型不匹配错误: error[E0308]: mismatched types --> src/main.rs:7:38 | 7 | let wont_work = Point { x: 5, y: 4.0 }; | ^^^ expected integer, found floating- point number For 0 码力 | 562 页 | 3.23 MB | 9 天前3
共 1 条
- 1