कहो कि मेरे पास स्निपेट ( खेल का मैदान ) है
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स्थानांतरित किया जाएगा। यह एक कास्ट के लिए बहुत मायने नहीं रखता है और जैसा कि दिखाया गया है, वैसे भी दो बार "स्थानांतरित" होने के मामले में ऐसा नहीं हो सकता है।
क्या नियम हैं जो उपरोक्त स्निपेट को विचार करने के लिए काम करने की अनुमति देते Aहैं Cloneऔर न ही Copy?