gpt4 book ai didi

Rust 函数需要 return 关键字。为什么?

转载 作者:行者123 更新时间:2023-11-29 08:26:03 25 4
gpt4 key购买 nike

我一直在玩 Rust,我正在尝试消除不必要的 return 语句。在一种情况下,我觉得这里不应该需要 return 语句,但我收到“主体没有尾部”的提示。似乎应该使用以下代码:

use sqlite;
use sqlite::Connection

fn main() {
let connection = connect();

query(connection);
}

// The offending function
fn connect() -> Connection {
// Simple example, shouldn't use unwrap
sqlite::open(":memory:").unwrap();
}

我可以向有问题的函数添加一个 return 语句,如下所示:

fn connect() -> Connection {
return sqlite::open(":memory:").unwrap();
}

但我很好奇为什么这不起作用。

最佳答案

fn connect() -> Connection {
sqlite::open(":memory:").unwrap()
}

删除分号,将行从 statement 更改为到expression ,它有一个返回值,Rust 然后可以将其推断为函数的返回值。

这在最后介绍了 Chapter 3 of the Rust language以书为例。

关于Rust 函数需要 return 关键字。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58345165/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com