कहो कि मेरे पास स्निपेट ( खेल का मैदान ) है
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
?