rust 默认情况下,警告函数应该有一个snake case标识符

kx7yvsdv  于 2023-04-12  发布在  其他
关注(0)|答案(4)|浏览(246)

我试图弄清楚这个警告实际上意味着什么。程序运行得很好,但在编译过程中,我得到了这个警告:

main.rs:6:1: 8:2 warning: function 'isMultiple' should have a snake case identifier, 
#[warn(non_snake_case_functions)] on by default

代码非常简单:

/*
    Find the sum of all multiples of 3 or 5 below 1000
*/

fn isMultiple(num: int) -> bool {
    num % 5 == 0 || num % 3 == 0
}

fn main() {
    let mut sum_of_multiples = 0; 

    //loop from 0..999
    for i in range(0,1000) {
        sum_of_multiples += 
            if isMultiple(i) {
                i
            }else{
                0
            };
    }
    println!("Sum is {}", sum_of_multiples);

}
6ojccjat

6ojccjat1#

您可以通过在文件中包含这一行来关闭它。

#![allow(non_snake_case)]
e5nqia27

e5nqia272#

Rust风格适用于名称为snake_case的函数,即编译器建议您编写fn is_multiple(...)

8nuwlpux

8nuwlpux3#

我的看法是,几十年来,程序员们一直在一遍又一遍地讨论名字和其他格式的问题,每个人都有自己的偏好,他们都是不同的。
是时候我们都长大了,意识到我们最好都使用相同的大小写和格式。从长远来看,这会让代码更容易阅读。是时候停止自私的偏好争吵了。就像其他人一样。
就我个人而言,我不太喜欢下划线,所以Rust标准让我有点不高兴。但我准备好习惯它了。如果我们都这样做,而不必再浪费时间思考和争论它,那岂不是很棒。
为此,我使用cargo-fmt和clippy,我接受他们说的任何事情。工作完成,继续下一件事。
Rust约定中有一个方法:
结构体使用 Camel 大小写,变量使用蛇大小写,常量使用大写。
使它很容易看到什么是什么一目了然。
-ZiCog
链接到线程:https://users.rust-lang.org/t/is-snake-case-better-than-camelcase-when-writing-rust-code/36277/2

amrnrhlw

amrnrhlw4#

只需在第一行代码中插入以下内容:

#![allow(non_snake_case)]

也要删除一些最常见的警告,请用途:

#![allow(dead_code)] 
#![allow(unused_variables)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(unused_assignments)]

您可以忽略的警告和错误的完整列表如下:https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html

相关问题