说我有以下片段(游乐场)
struct A {
pub val: u32
}
const GLOBAL_A: A = A {val: 2};
fn main() {
let some_a: A = GLOBAL_A;
let other_a: A = GLOBAL_A;
println!("double val = {}", some_a.val + other_a.val);
}
由于A既不是也不Clone是Copy,我假设的值GLOBAL_A将被移动。这对于const来说没有多大意义,而且无论如何也无法显示,因为它可以被“移动”两次。
允许以上代码片段起作用的规则A是什么Clone也不是Copy?