3、字符串(String) 三、自定义数据类型 1、结构体(Struct) 2、枚举(Enum) 四、其他数据类型 1、切片(Slice) 2、Option类型 3、Result类型 总结 导言 Rust是一种现代的、安全的系统编程语言,注重内存安全和并发性。在Rust中,数据类型是程序中最基本的构建块之一。本篇博客将详细解释Rust的各种数据类型,并提供相...
Girl(String,i32), } 附加两个数据值,一个String,一个i32 let boy = Gender::Boy(String::from("男孩"), 1); 也可以将结构体作为枚举数据类型。在枚举中也可以定义譬如结构体的方法。 impl Gender { fn getHobby(&self){ // 这里可以返回男孩、女孩不同的爱好选项 } } fn main(){ let boy = Gend...
2、枚举(Enum) 枚举是一种自定义的数据类型,它可以表示多个可能的值。枚举使用enum关键字定义,并可以包含不同的变体(variant)。 以下是一个枚举的示例: 代码语言:javascript 复制 enumFruit{Apple,Banana,Orange,}fnmain(){letfruit:Fruit=Fruit::Apple;match fruit{Fruit::Apple=>println!("It's an apple!")...
来看下例子 fnmain(){letstr:String=String::from("str");a(str);println!("main, {str}");}fna(str:String){letstr:String=str.to_uppercase();println!("a, {str}");} img_error_borrowed_after_move 这个报错简单地说就是这个main方法作用域中的str被释放掉了(指的是堆内存上的指针,当然,如果...
Option枚举的原型如下所示:enum Option<T> { Some(T), None,}这里的<T>是Rust中一个泛型语法,这里不细讲。Option枚举中的Some变体可以包含任意类型的数据,None表示为空。他的用法如下所示:fn main() { let some_value_int = Some(21); let some_value_str = Some("rust string"); ...
V6(String), } let home = IpAddr::V4(String::from("127.0.0.1")); let loopback = IpAddr::V6(String::from("::1")); Where structs give you a way of grouping together related fields and data, like aRectanglewith itswidthandheight; enums give you a way of saying a value is one ...
enumDirection{Up(u32),Down(i32),Left(String),Right(String),}fnmain(){letdirection=Direction::Up(66);matchdirection{Direction::Up(value)=>println!("turn up by {}",value),Direction::Down(value)=>println!("turn down by {}",value),Direction::Left(text)=>println!("turn left to {}"...
l Rust不允许包含了String类型字段的结构体实现Copy。 l 更新语法会转移字段的所有权。 枚举体 该类型包含了全部可能的情况,可以有效的防止用户提供无效值。例如: enum Number { Zero, One, } Rust还支持携带类型参数的枚举体。这样的枚举值本质上属于函数类型,他可以通过显式的指定类型来转换为函数指针类型。例如...
Rust 是一种有着两种字符串类型的特殊语言: str 和 String 。关于 str 没有特别重要的地方,因为它”未确定大小”,但是如果在它前面添加一个逻辑与符号 ( & ), &str 类型就会变得非常有用。简言之,它使用了 str 的引用 – 我将在下一节中介绍此主题。 String 是 &str 的由堆分配的对象版本。首先,...
聊一聊Rust的enum enum在实际编程中是非常常用的,enum的目的就是为了清晰定义出散落在系统各个角落的相同概念的有限固定值。 一、enum介绍 如果是简单定义固定值,我们可以使用常量const。比如 1 publicconstintMAX_THREAD_COUNT=100; 在C语言中,我们可以这样定义一个枚举方便各处使用,比如: ...