我有这个"main.rs"文件,我声明了一个版本常量.
pub const VERSION: &'static str = "v2";
mod game;
fn main() {
do_stuff();
}
Run Code Online (Sandbox Code Playgroud)
然后我想在另一个模块"game.rs"中访问这个全局常量:
pub fn do_stuff() {
println!("This is version: {}", VERSION);
}
Run Code Online (Sandbox Code Playgroud)
如何使常量可用?
在C++中,我使用类似这样的DEBUG宏:
#ifdef DEBUG
#define DEBUG_STDERR(x) (std::cerr << (x))
#define DEBUG_STDOUT(x) (std::cout << (x))
#else
#define DEBUG_STDERR(x)
#define DEBUG_STDOUT(x)
#endif
Run Code Online (Sandbox Code Playgroud)
Rust有类似的东西吗?
我想使用Serde创建一个包含错误消息的数组以及正确的对象:
extern crate serde; // 1.0.70
#[macro_use]
extern crate serde_derive; // 1.0.70
extern crate serde_json; // 1.0.24
#[derive(Serialize, Deserialize, Debug)]
pub struct MyError {
error: String,
}
#[derive(Serialize, Deserialize, Debug)]
pub struct MyAge {
age: i32,
name: String,
}
fn get_results(ages: Vec<i32>) -> Vec<MyAge> {
let mut results = vec![];
for age in ages {
if age < 100 && age > 0 {
results.push(MyAge {
age: age,
name: String::from("The dude"),
});
} else {
results.push(MyError {
error: String::from(format!("{} is …Run Code Online (Sandbox Code Playgroud) 我需要为Amazon Lambda函数附加ZIP文件的根路径,因为我已经在那里放置了一个可执行文件.
我试过了: PATH = "$PATH:$LAMBDA_TASK_ROOT:/"
那没起效.
如何在 PostgreSQL 9.5 on Rails 4.2 中使用“UPSERT”或“INSERT INTO likes (user_id,person_id) VALUES (32,64) ON CONFLICT (user_id,person_id) DO NOTHING”?
假设我有这个 JSON:
{
"array": [
33,
{"id": 44, "name": "Jonas"}
]
}
Run Code Online (Sandbox Code Playgroud)
如何编写 swift 4 Codable 结构来反序列化此 JSON?
struct ArrayStruct : Codable {
// What do I put here?
}
Run Code Online (Sandbox Code Playgroud) rust ×3
json ×2
aws-lambda ×1
debug-print ×1
debugging ×1
generics ×1
postgresql ×1
ruby ×1
rust-cargo ×1
serde ×1
swift ×1
swift4 ×1