【发布时间】:2017-04-11 10:27:28
【问题描述】:
所以,我有这个方法来检查我的队列数组是否正在减少,当我检查时的问题是,如果前两个项正在减少,它表示整个队列正在减少,但我希望它遍历每个成员整个数组的。 递减意味着每个整数都优于下一个整数,直到队列结束。我的 if,else 语句是错误的吗? 如果它正在减少,我的布尔值应该返回 true,否则它应该返回 false:
template<class T>
bool queue<T>::isDecreasing() const {
bool flag=false;
for (size_t i = 0; i < _capacity; i++) {
if(elements[i]>elements[i+1]){
flag = true;
return flag;
}else if(elements[i]<=elements[i+1]){
flag=false;
return flag;
}
}
return flag;
}
【问题讨论】:
-
你知道
return语句是什么意思吗? -
表示返回值对吗?
-
与您的问题无关,但我确实希望您的数组
elements中至少有_capacity+1数量的元素。 -
使用
_capacity-1而不是_capacity你只需要满足条件时的最终return 语句也需要在更改flag的值后立即跳出循环变量 -
好的,我明白了,谢谢!