ポインターを介して std::list 内の要素への参照を取得した場合、そのポインターは要素が削除されない限り有効なままになりますか、またはその要素にアクセスするたびにリストをトラバースする必要がありますか?
基本的に std::list は、他の要素が追加または削除されたときに要素を移動しますか?
私はそうではないと思う...
ポインターを介して std::list 内の要素への参照を取得した場合、そのポインターは要素が削除されない限り有効なままになりますか、またはその要素にアクセスするたびにリストをトラバースする必要がありますか?
基本的に std::list は、他の要素が追加または削除されたときに要素を移動しますか?
私はそうではないと思う...
C++ リファレンスによると、insert()
メソッドは反復子の有効性に影響を与えず、remove
メソッドは削除された要素の反復子の有効性にのみ影響します。ポインターではなく、リスト内の要素を指すイテレーターを維持したいのではないかと思います。