C primer 習題9 26 的問題。

2021-08-25 10:36:08 字數 509 閱讀 6194

原題略。

答案的問題在於 當一開始陣列的第乙個元素為0時,他為偶數,刪除它後,迭代器指向第乙個元素1 ,

錯誤在於下一句,--lit 使得迭代器指向begin的前乙個,超出了範圍,所以導致執行錯誤。

必須要了解for語句的實現,則可以解決這個問題。

#include#include#includeusing namespace std; int main() ; vectorc1(ia,ia+11); listc2(ia,ia+11); vector::iterator pos1; list::iterator pos2; for(pos1=c1.begin();pos1!=c1.end();++pos1) } for(pos2=c2.begin();pos2!=c2.end();++pos2) } for(pos1=c1.begin();pos1!=c1.end();++pos1) { cout<<*pos1<

我用了continue語句,則可以避免迴圈時要執行的++lit語句。

就此解決了這個問題。

C primer 習題9 26 的問題。

原題略。答案的問題在於 當一開始陣列的第乙個元素為0時,他為偶數,刪除它後,迭代器指向第乙個元素1 錯誤在於下一句,lit 使得迭代器指向begin的前乙個,超出了範圍,所以導致執行錯誤。必須要了解for語句的實現,則可以解決這個問題。include include includeusing nam...

c primer習題9 26答案錯誤

primer 習題9.26 假設有如下ia的定義,將ia複製到乙個vector容器和乙個list容器中,使用單個迭代器引數版本的erase函式將list容器中的奇數值元素刪除,然後將vector容器中的偶數值元素刪除。int ia 答案 include iostream include vector...

C primer習題筆記

1 解釋下面每個函式模板的定義並指出是否有非法的,改正所發現的錯誤。e typedef char ctype templatectype f5 ctype a 解答 e 合法,定義了乙個模板函式f5,該函式的返回型別與形參型別相同,均可繫結到任何型別 而不一定是char型別 2 何時必須使用type...