题目 fn return1() { if (return { print!("1") }) { } } fn return2() { if return { print!("2") } { } } fn break1() { loop { if (brea...
题目 struct S; impl Drop for S { fn drop(&mut self) { print!("1"); } } fn main() { let s = S; let _ = s; print!("2"); } 关键 d...
题目 struct S { f: fn(), } impl S { fn f(&self) { print!("1"); } } fn main() { let print2 = || print!("2"); S { f: print2 }.f(...
题目 fn main() { let mut a = 5; let mut b = 3; print!("{}", a-- - --b); } 关键 rust没有++和--,都会被拆解为+和-。 题解 a-- - --b=> a-(-(-(-(-b)...
题目 fn main() { let mut x = 4; --x; print!("{}{}", --x, --x); } 关键 rust是不存在++或者--的。 题解 -的计算效力是存在的,但是不会修改原来的值。--x...
题目 trait Trait { fn f(&self); } impl Trait for u32 { fn f(&self) { print!("1"); } } impl<'a> Trait for &'a i32 { f...
题目 trait Trait: Sized { fn is_reference(self) -> bool; } impl<'a, T> Trait for &'a T { fn is_reference(self) -> bool { true...
题目 struct S; fn main() { let [x, y] = &mut [S, S]; let eq = x as *mut S == y as *mut S; print!("{}", eq as u8); } 关键 标记类型 struct S 标...
题目 struct D(u8); impl Drop for D { fn drop(&mut self) { print!("{}", self.0); } } struct S { d: D, x: u8, } fn main() { let...
题目 fn f<'a>() {} fn g<'a: 'a>() {} fn main() { let pf = f::<'static> as fn(); let pg = g::<'static> as fn(); print!("{}"...
题目 trait Trait { fn f(&self); } impl<'a> dyn Trait + 'a { fn f(&self) { print!("1"); } } impl Trait for bool { fn f(&a...
题目 macro_rules! m { (1) => { print!("1") }; ($tt:tt) => { print!("2") }; } macro_rules! e { ($e:expr) => { m!($e) }; } macro_rules! t {...
题目 macro_rules! m { (==>) => { print!("1"); }; (= = >) => { print!("2"); }; (== >) => { print!("3"); }; (= =>) => {...
题目 #[repr(u8)] enum Enum { First, Second, } impl Enum { fn p(self) { match self { First => print!("1"), Secon...
题目 use std::mem; fn main() { let a; let a = a = true; print!("{}", mem::size_of_val(&a)); } 关键 ZSTZST在rust中使用广泛。大多数编程语言中的M...
社交账号:
我要举报该,理由是: