亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

數據結構(C++)?

數據結構(C++)?

C++
holdtom 2019-02-06 10:07:52
數據結構(C++)
查看完整描述

2 回答

?
守著一只汪

TA貢獻1872條經驗 獲得超4個贊

你的那個Bool不應該自己定義,應該直接用標準本來就自帶的bool類型;即使你要自己定義,你也應該定義為enum Bool{FALSE, TRUE}。因為在C++里,bool和int是可以相互轉換的,而enum和int也是相互轉換的。如果false放在后面,則返回false將會返回1,也就是系統本身的true值。也就是說返回false反而變成了true,這直接導致了你的full函數出現了問題。從而你的push函數一直返回overflow。

查看完整回答
反對 回復 2019-03-08
?
汪汪一只貓

TA貢獻1898條經驗 獲得超8個贊

沒弄明白你的這個棧是干什么的,下面說說它的錯誤:
首先是編譯不通過,除了在聲明error_code這個枚舉類型時,你使用error_code這個名字,在后面的所有函數返回error_code都是錯的,比如,
error_code stack::get_top(int &x){
if(empty())return underflow;
else{
x=A[count-1];
return success;
}
}
修改為返回int。
還有,系統本身就有bool類型的值,true false,并且值一般都是1 和 0;
你定義這個類型 enum Bool{TRUE,FALSE}; 完全是沒有必要,或者說是錯誤。
所以把你定義的這個刪掉,然后程序里面出現的TRUE,FALSE,改成系統的。




查看完整回答
反對 回復 2019-03-08
  • 2 回答
  • 0 關注
  • 633 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號