const is more like C++ constexpr, but static is similar to static from C: it’s a variable that lives outside any scope. Of course, that means the same static can be accessed by multiple threads, so writing to a static is unsafe (except for types like Mutex, you can safely use those to write, but your static won’t be declared mut)
RWIIR!!!
edit: here, I did it for you:
use std::*; static mut sucked: bool = false; fn main() { unsafe { check_sucked(); } println!("Kris has been sucked is {}", sucked) } unsafe fn check_sucked() { if !sucked { suck(); } } fn suck() { sucked = true; }
edit 2: fixed it
const mut…
I like to live
unsafe
If you made it static, sure, but right now you’re living compiler error
oh well, I’m just starting to learn the language and come from java, so I thought: wait, it can’t be static
const is more like C++ constexpr, but static is similar to static from C: it’s a variable that lives outside any scope. Of course, that means the same static can be accessed by multiple threads, so writing to a static is unsafe (except for types like Mutex, you can safely use those to write, but your static won’t be declared mut)
I personally would have matched the
sucked
… Maybe printed some lovely message about being content or somezhin