を反復処理しQStringList
、文字列を出力してから、リストから削除しようとしています。うまくいく方法が見つからないようですQStringList
!例えば:
for ( QStringList::Iterator it = commandList.begin(); it != commandList.end(); ++it ) {
out << "Processed command: " << *it << endl;
*it.erase();
}
コンパイラ エラーが発生します: 'QList::Iterator' には 'erase' という名前のメンバーがありません
- イテレータが現在指しているアイテムを削除するにはどうすればよいですか?
- ループ内で削除しても安全ですか? (
++it
リストの途中でアイテムを削除すると失敗する可能性があるため)