1
所以我想實現這個方法來知道整數是否在我的堆棧數組中連續出現兩次。這個整數是作爲一個參數,我想知道它是否連續發生兩次。不幸的是,我的方法總是返回false,你知道爲什麼嗎?找出堆棧數組中的下一個整數是否相同
template<class T>
bool stack<T>::isConsecutive(const T & data) const{
bool flag=false;
for (size_t i = 0; i < _top; i++) {
if(data==elements[i] && elements[i]==elements[i+1]){
flag=true;
}
else {
flag=false;
}
}
return flag;
}
你的旗幟將被重置爲假,因爲當你發現一個連續數字的實例時,你不會打破/返回,同時'i <_top'應該是'i <_top - 1',假設'_top '是棧的大小,ub被調用。 – George
我添加了return語句,它工作!謝謝 –