不是A右边小于等于B左边,且不是A左边大于等于B右边

This commit is contained in:
大石头 2017-09-20 00:17:14 +08:00
parent 5ea8e79428
commit a5dbc2471c
1 changed files with 8 additions and 2 deletions

View File

@ -151,8 +151,14 @@ bool Area::In(uint start, uint len)
bool Area::Any(uint start, uint len)
{
// 只要搭边就算数
//return start <= Offset + Size && start + len >= Offset;
return !(Offset > start + len - 1 || Offset + Size < start);
// start <= A < start + len
// Offset <= B < Offset + Size
// A左边小于B右边且A右边大于B左边
//return start < Offset + Size && start + len > Offset;
// 不是A右边小于等于B左边且不是A左边大于等于B右边
return !(Offset >= start + len || Offset + Size <= start);
}
/****************************** 数据操作接口 ************************************/