Skip to content
เข้าสู่ระบบ

NonZero Types

Integer types ที่การันตีว่าไม่เป็น 0

use std::num::{NonZeroU32, NonZeroI32, NonZeroUsize};
fn main() {
// Create NonZero values
println!("=== Creating NonZero ===");
// new() returns Option
let nz = NonZeroU32::new(42);
println!("NonZeroU32::new(42): {:?}", nz);
let nz_zero = NonZeroU32::new(0);
println!("NonZeroU32::new(0): {:?}", nz_zero);
// new_unchecked (unsafe)
let nz = unsafe { NonZeroU32::new_unchecked(42) };
println!("new_unchecked(42): {}", nz);
// Get the inner value
println!("\nget(): {}", nz.get());
// Signed versions
let negative = NonZeroI32::new(-42).unwrap();
println!("\nNonZeroI32: {}", negative.get());
// For sizes
let size = NonZeroUsize::new(100).unwrap();
println!("NonZeroUsize: {}", size.get());
}

เข้าสู่ระบบเพื่อดูเนื้อหาเต็ม

ยืนยันตัวตนด้วยบัญชี Google เพื่อปลดล็อกบทความทั้งหมด