- 1 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 00:00:47 ]
- エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。 ※sage禁止です(と代々スレに書いてありますが自己判断で)。 【前スレ】 【初心者歓迎】C/C++室 Ver.49【環境依存OK】 pc11.2ch.net/test/read.cgi/tech/1203478421/ 【アップローダー】(質問が長い時はココ使うと便利) kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
- 92 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 23:46:06 ]
- assert(n >= 0); がないと危険だな。
まあそれはいいとして、 vector を継承すると std::vector<T>* v = new cvector<T>; とした場合に delete v; の動作が未定義だし、 vector<T>& に渡せるけど、 operator[] が仮想関数じゃないから危険だな。
- 93 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 23:47:10 ]
- this 使うなら (*this)[n % size()] だし、
operator[](n % size()) でもいいな。
- 94 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 23:51:04 ]
- いくらなんでも std::vector<T>* は無いだろw
- 95 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 23:52:04 ]
- int -> size_t
public -> private
- 96 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 23:55:57 ]
- n に負の数を渡した場合のチェックが出来ないのが size_t の悩みどころだな。
リングバッファだと 「範囲外のインデックス」 ってのが存在しないから 0 <= n && n < size() なら有効・・・とかできないし。
- 97 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 00:00:29 ]
- リングバッファならむしろ負の数サポートが欲しいところ。
v[-1] == v[size()-1]
|

|