C#/Xamarin错误?布尔型

本文关键字:布尔型 错误 Xamarin | 更新日期: 2023-09-27 18:26:29

这很奇怪。我有这个C#代码:

bool value = (((Literal)expr.left).value == ((Literal)expr.right).value);

当我用Xamarin调试器检查它时,它"告诉"我valuefalse,但(((Literal)expr.left).value == ((Literal)expr.right).value)true。为什么?我很困惑。。。

C#/Xamarin错误?布尔型

找到了。((Literal)expr.left).valueobject,这意味着它总是返回false,除非右和左是相同的布尔,而不是。

将它们都选为bool将比较它们的值。

bool value = ((bool)((Literal)expr.left).value == (bool)((Literal)expr.right).value);