私はstd::list
オブジェクトを持つ2つを持っています:source_list
とnew_list
. 目標は、 からとnew_list
からsource_list
始めて からにオブジェクトを追加することです。position_at_source_to_adding_new_from
steps_between_new
steps
:の問題はsource_list
、短すぎたり、大きすぎnew_list
たり (またはsteps
大きすぎたり) する可能性があり、std::advance(it, steps_between_new)
イテレータを実行すると、 の範囲を超える可能性がsource_list
あり、 になりますundefined behavior
。
範囲内にいることを確認するために前後にイテレータをチェックする方法std::advance
は? そして、new_list
それらの間にステップを置いて配置できるオブジェクトがさらにある場合は、ソースリストの最後にオブジェクトを簡単に追加する必要があります。
ps。私の英語で申し訳ありませんが、母国語ではないので説明が難しいです。私のテキストへの修正は大歓迎です。ありがとう。