gpt4 book ai didi

c++ - 分数类增量运算符重载解释

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:03:19 25 4
gpt4 key购买 nike

自上学期以来,我对此进行了很多思考(老实说)。而且我仍然不完全确定这里发生了什么。谁能帮助和启发我?我同意前/后缀的区别。这就是分数递增的方式,这让我很困惑

以前缀为例。那么如果我有一个 2/4 的分数会增加到 3/4 吗?因为当我查看 numer += denom 时,它让我认为它会返回 2+2+4,即 8。

// prefix increment operator
fraction& fraction::operator++() {
numer += denom;
return *this;
}

// postfix increment operator
fraction fraction::operator++(int) { // Note dummy int argument
fraction temp(*this);
++*this; // call the prefix operator
return temp;

提前致谢:)

最佳答案

前缀函数拼写为

numer = numer + denom;

所以在 2/4 的情况下,它将是 numer = 2 + 4 = 6 所以结果将是 6/4 (因为 denom 保持不变)。由于 n/n = 1 对于所有整数(0 除外),(a+n)/n 将始终增加 1

后缀版本使用前缀版本进行上述计算。

关于c++ - 分数类增量运算符重载解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17875938/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com