有如下代码:
对比两个指针,编译报错,结果无法用auto或bool存下来,但可以用于if条件判断。
int a[] = {1,2,4};
int* p1 = a;
int* p2 = a + 1;
auto b = (p2 > p1); // error C2040: 'b': 'auto' differs in levels of indirection from 'int [3]'
if (p2 > p1) // correct
{
// do something
}
按我理解,指针的对比结果应当也是bool(不管逻辑上是否有意义,这里只讨论语法)。请广大网友帮忙解答,感激不尽。