これを数時間解決しようとしていましたが、これを回避する方法はわかりません。ランタイムエラー:アサーションに失敗しました。反復可能でないリストイテレータ
[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
私はまた、すべての第四の要素を指すポインタの別のリストを作成している:私は次のようなリストコンテナ内の値のリストを持っています。したがって、彼らは以下を指しています:
[0,4,8,12]
私は、ポインタのリストの終わりを返すメソッドを持っています。
int* end() {return *(pointerlist.end()) ;};
これは私に「ランタイムエラー:アサーションが失敗した、リストIterater dereferencableない」を与える:次のように
を私は、リストの終わりを超えて到達しようとしていますので、私はこのエラーが供給していますことを理解しポインタの、しかし私はこのリストの最後の要素の値を持っていると思います。私も次のことをやろうとしましたが、事態を悪化させます。
int* end() {return *(pointerlist.end() - 1) ;};
ポインタのリストの最後の要素をどのように取得することができますか?
あなたは「物事が悪化し、」何を意味するのですか?何が起こった? –
-1を入力すると、次のような20個のエラーが表示されます。 エラーエラーC2784: '_RanIt1 :: difference_type std :: operator - (std :: move_iterator <_RanIt>&const std: :move_iterator <_RanIt2>&) ':' std :: move_iterator 'のテンプレート引数を推論できませんでした。<_RanIt>&' – SSS