【发布时间】:2011-09-21 07:44:44
【问题描述】:
我正在尝试编写一个 bool 函数,它查看包含正数或负数的数组中的第一个索引,并分类它是否为负号(即 - )。如果它是负号,则返回 false,其他一切都返回 true。我试图弄清楚如何比较负号。以下代码给出了一个错误,因为'-'
bool BigNum::get_positive() const
{
char '-';
if(digits[0] == '-')
{
return false;
}
else
{
return true;
}
}
【问题讨论】:
-
你希望通过这个实现什么:
char '-';? -
有一些现有的大整数库[我假设这就是你想要做的],为什么要重新发明轮子?
-
另外,这更像是一个风格问题,但既然你的函数试图确定 BigNum 的实例是否代表一个正数,为什么不叫它
isPositive()?一个名为get_X()的函数通常表明它正在返回一些存储的信息,但这里不是这种情况。 -
另一个样式问题是
if (condition) return true; else return false;,逻辑上应该是return !condition;(没有if)。
标签: c++ boolean negative-number