rust 泛型01
同一时间泛型只能是同一种类型,否则就用多个泛型参数。结构体这里的泛型参数T和K,就表示不同的参数类型,当然T和K也可以是同一种类型。
#[derive(Debug)] struct Base<T,K> { x: T, y: T, z: K, } impl<T,K> Base<T,K> { fn new(a:T, b:T, c: K) -> Base<T,K> { Base { x: a, y: b, z: c} } } fn main() { let a = Base::new(1, 2,"str"); let b = Base::new(1.2, 2.2,"String".to_string()); let c = Base::new(10,100,3.1); let d = Base::new(1,2,3); // 不同泛型参数,同一种类型 println!("a: => {:?}\nb: => {:?}\nc: => {:?}\nd: => {:?}",a,b,c,d); }
output:
a: => Base { x: 1, y: 2, z: "str" }
b: => Base { x: 1.2, y: 2.2, z: "String" }
c: => Base { x: 10, y: 100, z: 3.1 }
d: => Base { x: 1, y: 2, z: 3 }
作者:天使不设防
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!