int arr[5];
int a = min( _countof(arr),-1) ;//min是C库的宏,不是STL模板
int b = (_countof(arr)) < (-1) ? (_countof(arr)) : (-1);// 展开a
int c = (sizeof(*__countof_helper(arr)) + 0) < (-1) ? (sizeof(*__countof_helper(arr)) + 0) : (-1);// 展开b
assert( a == 5 );//牛!
assert( b == 5 );//牛!
assert( c == 5 );//牛!
assert( _countof(arr)<-1 );//牛!
size_t s=5;
assert( s < -1 );//我靠
if( s < -1 )
{
OutputDebugString("n太牛了");//晕死
}
难道是64位整型和有符号整型比较时,都转换成64位无符号数了?