模板实现判断一个int是否是一个有效的int

enum RangeConstraint {
  RANGE_VALID = 0x0,  // Value can be represented by the destination type.
  RANGE_UNDERFLOW = 0x1,  // Value would overflow.
  RANGE_OVERFLOW = 0x2,  // Value would underflow.
  RANGE_INVALID = RANGE_UNDERFLOW | RANGE_OVERFLOW  // Invalid (i.e. NaN).
};

   base::CheckedNumeric<int> nSize = nLen;

 

nSize.ValueOrDie()   //获取值

  base::CheckedNumeric<int> totalSize = nNewMax;
        totalSize *= m_nUnitSize;
        if (!totalSize.IsValid() || nNewMax < m_nSize) {
            return FALSE;
        }

posted on 2021-12-30 04:01  lydstory  阅读(39)  评论(0)    收藏  举报

导航