我们一直在我的工作中陷入不必要的编码争论。今天我问条件 AND (&&) 或 OR (||) 是否具有更高的优先级。我的一位同事坚持说他们有相同的优先级,我有疑问,所以我查了一下。
根据 MSDN,AND (&&) 的优先级高于 OR (||)。但是,你能向持怀疑态度的同事证明这一点吗?
http://msdn.microsoft.com/en-us/library/aa691323(VS.71).aspx
bool result = false || true && false; // --> false
// is the same result as
bool result = (false || true) && false; // --> false
// even though I know that the first statement is evaluated as
bool result = false || (true && false); // --> false
所以我的问题是你如何用代码证明 AND (&&) 比 OR (||) 具有更高的优先级?如果你的回答是没关系,那为什么它是用这种语言构建的呢?