当我完成 Advent of Code 2021 时,我有一个main.rs如下所示的文件:
// # Day 1\n if day1::is_complete() && print_complete || !day1::is_complete() {\n day1::part1();\n day1::part2();\n } else {\n println!("\xe2\x9c\x85 Day 1 finished!")\n }\n\n // # Day 2\n if day2::is_complete() && print_complete || !day2::is_complete() {\n day2::part1();\n day2::part2();\n } else {\n println!("\xe2\x9c\x85 Day 2 finished!")\n }\n\n...\nRun Code Online (Sandbox Code Playgroud)\n这将持续 25 天。
\npart1每个模块都有一个名为和的函数part2。
有没有办法对像 python 这样的更简洁的文件执行类似的操作eval?
for day in 1..=25 {\n let mod_name = convert_to_mod_name(day);\n if mod_name::is_complete() && print_complete || !mod_name::is_complete() {\n mod_name::part1();\n mod_name::part2();\n } else {\n println!("\xe2\x9c\x85 Day {day} finished!", day);\n }\n \nRun Code Online (Sandbox Code Playgroud)\n
有没有办法对像 python 这样的更简洁的文件执行类似的操作
eval?
不。Python 是一种动态语言。Rust 是一种静态编译语言。
最接近的是加载动态链接库。Rust 没有稳定的 ABI,除了一小部分用于 FFI 的子集。这本质上是不安全的。
TL;DR:对于诸如代码的出现之类的事情来说,这是不值得的。
| 归档时间: |
|
| 查看次数: |
1018 次 |
| 最近记录: |