トップページ > プログラム > 2015年06月13日 > 6grWS76k

書き込み順位&時間帯一覧

4 位/207 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000000034108



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
C++相談室 part117 [転載禁止]©2ch.net

書き込みレス一覧

C++相談室 part117 [転載禁止]©2ch.net
343 :デフォルトの名無しさん[]:2015/06/13(土) 20:33:52.62 ID:6grWS76k
イテレーターは欠陥だと思う
イテレーターがポインターだったら
++iteratorが使えないだろ
イテレーターに基底ポリモーフィズム使いたいときどうすんの
ただしくは
add(iterator)のようなインライン関数でラッピングするのがよいだろう
C++相談室 part117 [転載禁止]©2ch.net
346 :デフォルトの名無しさん[]:2015/06/13(土) 20:46:13.99 ID:6grWS76k
iterator->operator++あるいは++(*iterator)
ここまでいえばさすがにわかるでしょwww
C++相談室 part117 [転載禁止]©2ch.net
351 :デフォルトの名無しさん[]:2015/06/13(土) 20:58:02.47 ID:6grWS76k
ベースクラスポリモーフィズムのことだとわかるが
begin()の戻り値がイテレーターのポインターだった場合どうするのか
考えてみよう
猿でもわかると思うが
C++相談室 part117 [転載禁止]©2ch.net
356 :デフォルトの名無しさん[]:2015/06/13(土) 21:09:22.11 ID:6grWS76k
>>353
++(*iterator)をアルゴリズムの中でつかえば
++iteratorがアルゴリズムの中で使えなくなり
その逆も成り立つ
>>354
現実にありまくり
C++相談室 part117 [転載禁止]©2ch.net
359 :デフォルトの名無しさん[]:2015/06/13(土) 21:20:05.04 ID:6grWS76k
>>357
俺の書いたプログラムには出てくるのだから
その確率は高いだろ
>>358
f(c.begin())としたときc.begin()がポインターであるときと
そうではないときを比べてみよう
C++相談室 part117 [転載禁止]©2ch.net
361 :デフォルトの名無しさん[]:2015/06/13(土) 21:23:08.86 ID:6grWS76k
イテレーターはコンセプト、ポインターじゃないよ
C++相談室 part117 [転載禁止]©2ch.net
366 :デフォルトの名無しさん[]:2015/06/13(土) 21:34:39.10 ID:6grWS76k
引数でイテレーターを渡すときは何とかなるが
アルゴリズムの中でイテレーターを使うときに一番困るんだよな
C++相談室 part117 [転載禁止]©2ch.net
374 :デフォルトの名無しさん[]:2015/06/13(土) 22:32:57.64 ID:6grWS76k
基底コンテナからの派生コンテナにおいて
基底コンテナのポインターに代入された派生コンテナを考えてみよう
このとき基底コンテナのポインターからどのように派生コンテナのイテレーターをえるのか
あるアルゴリズムの引数として基底クラスのコンテナを渡しアルゴリズムの内部で
イテレーターを得てつかうとする

そのほかにもこの方法は有用な使い方がある例えばイテレーターとして
beginイテレーターとendイテレーターのペアをイテレータと考える
そしてhasNextとnextというおなじみのインライン関数をを自分で定義して使う


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。