gpt4 book ai didi

rust - 是否可以通过命名参数来调用 Rust 中的函数?

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

我不知道这是否被认为是一种好的编程习惯,但就我个人而言,我发现通过命名函数的参数来调用函数会使代码更具可读性。我不知道这在 Rust 编程语言中是否可行。我在语法中没有找到任何命名的调用表达式:
https://doc.rust-lang.org/reference/expressions/call-expr.html
因此,例如以下不能编译:

fn add(n1 : i32, n2 : i32) -> i32 {
n1 + n2
}


fn main() {
let sum_value = add(n1 = 124, n2 = 200);
println!("sum = {}", sum_value);
}
因此,我的问题是:在 Rust 中是否可以在函数调用中命名参数,如果答案是肯定的,根据 Rust 最佳实践,它是否被认为是一种好的做法? (我是初学者)
环境:
OS: Linux Ubuntu MATE 20.04.1 (64 bits)
rustc --version: rustc 1.46.0 (04488afe3 2020-08-24)

最佳答案

Therefore my question is: Is naming arguments in function call is possible in Rust


Rust 不支持命名参数作为语言的一部分。

is it considered to be a good practice according to Rust best practices? (I'm a beginner)


通常不会(相当强的类型通常有助于缓解这个问题)
在它确实有用的情况下,两种模式会反复出现:
  • 一个选项结构,该函数将具有有限数量的简单参数和一个命名结构来传递更多结构化数据,提供“命名”
  • 构建器模式,它是前者的进化版和更文学化的版本(并且更有利于可选参数)

  • 有关更多信息,请参阅链接到 https://old.reddit.com/r/rust/comments/fg6vrn/for_your_consideration_an_alternative_to_the/ 的文章(我链接到该线程是因为有关于选项的有用讨论,以及指向有用 crate 的链接)。

    关于rust - 是否可以通过命名参数来调用 Rust 中的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64642329/

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