我有一个名为 的文件1_add.rs,我尝试将其添加到lib.rs. 然而,我在编译过程中遇到了以下错误。
error: expected identifier, found `1_add`
--> src/lib.rs:1:5
|
1 | mod 1_add;
| ^^^^^ expected identifier
Run Code Online (Sandbox Code Playgroud)
看来以数字开头的标识符无效。但为什么 Rust 会有这个限制呢?如果我想指示不同 rust 文件的顺序(用于管理练习文件),是否有任何解决方法?
ens*_*nsc 10
在你的情况下(你想命名文件,如1_foo.rs)你可以写
#[path="1_foo.rs"]
mod mod_1_foo;
Run Code Online (Sandbox Code Playgroud)
允许标识以数字开头可能会与类型注释发生冲突。例如
#[path="1_foo.rs"]
mod mod_1_foo;
Run Code Online (Sandbox Code Playgroud)
设置为键入u32. 1_u256当表示另一个变量时,这会令人困惑。
但为什么 Rust 会有这个限制呢?
不仅是 Rust,我编写的代码行中的大多数语言也都有此限制。
值得深思的:
let a = 1_2;
Run Code Online (Sandbox Code Playgroud)
是1_2变量名还是值的文字12?如果变量1_2现在不存在,但稍后添加它,这个标记是否不再是数字文字怎么办?
虽然 rust 编译器可能可以让它工作,但恕我直言,这不值得所有的混乱。
| 归档时间: |
|
| 查看次数: |
1538 次 |
| 最近记录: |