最近 Unity DOTS 进入 LTS 了,想试一试,平时 C#用得少,全凭 IDE 硬写,初始化常量遇到了这样的问题,如 Rust 中:
let a = if <slow operation A> { 1 } else if <slow operation B> { 2 } else { 3 }; (注:Rust 不带mut默认是常量)
没有这个功能的话,a 就得声明成 mutable ,然后在条件分支里面改,或者用一长串?:?:。 用 C++的时候是用一个临时的 lambda ,在条件里 return 。
const int i = [&]() { if (<slow operation A>) return 1; else if (<slow operation A>) return 2; else return 3; }(); 看 V 站经常有人说 C#功能大杂烩,有没有好一点的办法?
