Jim*_*ies 8 .net c# ternary-operator
是否可以根据条件区分我分配的变量?我遇到的问题是想要这样做:
(bEquipAsSecondary ? currentWeaponOffhand : currentWeaponMainhand) = weaponToSwitchTo;
Run Code Online (Sandbox Code Playgroud)
代替
if (bEquipAsSecondary)
{
currentWeaponOffhand = weaponToSwitchTo;
}
else
{
currentWeaponMainhand = weaponToSwitchTo;
}
Run Code Online (Sandbox Code Playgroud)
这导致以下错误
错误CS0131赋值的左侧必须是变量,属性或索引器
所以我想知道是否有办法减少使用的空间并且 - 在我看来 - 让它看起来有点整洁?
不确定这是否真的有效,但如果你真的想坚持三元运营商,这是我的2美分......
(bEquipAsSecondary ? ref currentWeaponOffhand : ref currentWeaponMainhand) = weaponToSwitchTo;
Run Code Online (Sandbox Code Playgroud)