-3
已解決*實際上發生錯誤是因爲它沒有使用子類的方法,因爲它們是在超類中實現的,所以它在從ListaIterador但如果來自上層,則不要這樣做。嘗試在C++中使用超類時發生運行時錯誤
您好我創建了一個類的ListIterator一個通用型的,它擴展了迭代器,所以我做實現迭代器中的ListIterator類的方法。這個想法是爲了使用Iterator類中可用的方法(只讀方法)創建一個迭代器。 首先我創建一個ListIterator,插入一些東西,然後我想創建一個迭代器對象,並使用只讀方法,但在列表上。 我希望自己清楚,注意我是用西班牙文編碼的,所以Iterador意味着迭代器,Insertar是插入的,Avanzar意味着下一個。
這個代碼拋出運行時執行錯誤,不知道爲什麼,也許你可以給我一個解決方案
ListaIterable<int> *iter = new ListaIterable<int>;
Iterador<int> *ITERADOR = iter;
iter->Insertar(123); //note here I use iter and not ITERATOR for inserting.
iter->Insertar(987); //also here
cout << ITERADOR->ElementoActual()<<endl; //now this method should show the element
ITERADOR->Avanzar() // means next()
cout << ITERADOR->ElementoActual()<<endl;
**什麼錯誤?**它是一個訪問衝突或段錯誤訪問無效的或空指針? –
有關斷言失敗 – HoNgOuRu
我正在嘗試這樣做。 Person per = new Athlete(); Person per2 = per; per2-> ShowName(); 應工作 – HoNgOuRu