我有这个代码:
BigInteger lhs = new BigInteger(0);
BigInteger rhs = new BigInteger(0);
bool isLeftHandSide = true;
for (int i = 0; i < txtResult.Text.Length; i++)
{
char currentCharacter = txtResult.Text[i];
if (char.IsNumber(currentCharacter))
{
char currentCharacter = txtResult.Text[i];
if (isLeftHandSide)
{
lhs += (int)char.GetNumericValue(currentCharacter);
}
else
{
rhs += (int)char.GetNumericValue(currentCharacter);
}
}
}
我想知道是否有一种方法可以存储对当前端的引用,以便我可以直接操作该变量并摆脱 if 和 else 语句。我希望能够在不使用不安全代码上下文的情况下做到这一点。
像替换这个:
if (isLeftHandSide)
{
lhs += (int)char.GetNumericValue(currentCharacter);
}
else
{
rhs += (int)char.GetNumericValue(currentCharacter);
}
有了这个:
currentSide += (int)char.GetNumericValue(currentCharacter);
currentSide 是对 lhs 或 rhs 的引用。因为它们是结构,所以我不确定如何保留对它的引用,而不仅仅是复制数据。
谢谢。