Rust函数返回不同类型的值

在Rust中,函数可以返回不同类型的值,一种常见的方法是使用枚举类型,其中枚举的不同变体可以包含不同类型的值;

示例代码

在这个示例中,定义了一个Result的枚举,其中包含三个变体,Number包含一个i32Message包含一个String,以及不带关联数据的None

get_result函数接受一个i32参数,并根据该数字是负数、正数、还是零来返回相应的Result枚举;

enum Result {
    Number(i32),
    Message(String),
    None,
}

fn get_result(num: i32) -> Result {

    if num < 0 {
        Result::Message("负数".to_string())
    }else if num > 0 {
        Result::Number(num + 100)
    }else {
        Result::None
    }
}

fn main(){
    let value = 5;
    match get_result(value) {
        Result::Message(msg) => {
            println!("{}",msg);
        },
        Result::Number(num) =>{
            println!("{}",num);
        },
        Result::None => {
            println!("None");
        }
    }
}

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/rust-function-return-values-of-different-types.html

分类: 计算机技术
推荐阅读:
Rust爬取网页上的所有链接 要在Rust中爬取网页上的所有链接,可以使用一些Rust的库,例如reqwest和scraper。
Golang安装gin库的详细教程及错误解决方法 Gin是用Go(Golang)编写的Web框架。 它具有类似于martini的API,其性能比httprouter快40倍。 如果您需要性能和良好的生产率,您会喜欢Gin
C语言iscntrl()函数:判断字符是否为控制字符 iscntrl()函数是C语言中的一个标准库函数,用于检查一个字符是否为控制字符;控制字符的ASCII编码有0~31、127;
Python pow()函数 pow() 函数是 Python 内置函数之一,用于计算一个数的幂。它接受两个参数,第一个参数为底数,第二个参数为指数,如果提供第三个参数,则表示对结果取模。
Golang获取文件的大小 在Go语言中,你可以使用os.Stat()来获取文件信息,其中就包括文件的大小;
Linux终端给命令设置超时 在Linux系统下,有这么个场景,当你运行一条命令,你希望它在指定时间后,如果它还在运行,就自动结束它,那你可以通过这一条命令实现: