C++相談室 part128at TECH
C++相談室 part128 - 暇つぶし2ch179:デフォルトの名無しさん
16/12/02 02:49:25.45 l8IxU+t8.net
クラス変更無しでvector渡したいなら、ラッパを作って
配列と要素数を更新してからメソッド呼ぶようにするしかないんじゃないかな?

180:デフォルトの名無しさん
16/12/02 05:46:11.27 na0ypgqO.net
何が問題でどうしたいのか明確にしてないからこんな風にとっちらかった回答になるんだよな

181:デフォルトの名無しさん
16/12/02 07:22:37.66 nGP8T2R9.net
質問者本人はこれ以上無いくらいに明確にしたつもり

182:デフォルトの名無しさん
16/12/02 07:57:25.48 na0ypgqO.net
>>181
本人?
意図不明なラムダ使った未定義動作のコードで明確にしたつもりって言われてもなあ

183:デフォルトの名無しさん
16/12/02 08:20:31.67 4/nN0nxx.net
明確でないならスルーしとけばいい
明確でないから自分の都合で改編するとか迷惑なだけ

184:デフォルトの名無しさん
16/12/02 09:56:01.01 tdlBqAAM.net
>>174
連続格納が保証されてるのだから
&a[0]を渡せばいいよ

185:デフォルトの名無しさん
16/12/02 10:09:51.51 HWcr/nXn.net
そもそもの基本
◎ int* に vector<int> は渡せない
相手が int* でビルトイン[]演算子を使う限り、
vector ではなく生の配列を用意する以外に選択肢はない

186:デフォルトの名無しさん
16/12/02 10:30:03.38 na0ypgqO.net
明確にしたとしても
>>185
みたいに何も解ってない初心者がでしゃばって見当違いな回答する事も多かったな

187:デフォルトの名無しさん
16/12/02 10:53:45.98 HWcr/nXn.net
そもそもの基本を指摘されて発狂するようなガイキチが暴れてただけだろ

188:デフォルトの名無しさん
16/12/02 10:59:49.79 dQ26sSxp.net
>>170
ラッパーかヘルパーを用意して、vectorはそっちで処理する。

189:デフォルトの名無しさん
16/12/02 11:04:51.34 na0ypgqO.net
>>187
お前は何のためにstd::vector<T>::dataがT*を返すと思ってんの?

190:デフォルトの名無しさん
16/12/02 12:06:38.84 kfHVwGjq.net
vector::data()が追加されたのはC++11 からだから古い入門書には載ってない。
だから安易にdata()を使えと回答する人もまた入門者に近しい。

191:デフォルトの名無しさん
16/12/02 12:12:12.15 jbEu1BDa.net
どうも論理が飛躍しているな

192:デフォルトの名無しさん
16/12/02 12:28:12.29 7EcjjmS3.net
質問者はラムダ使ってるんだからdata()使えるでしょ

193:デフォルトの名無しさん
16/12/02 12:29:35.07 dQ26sSxp.net
>>190
古い入門書を想定しろ、はさすがに言いがかりがひどすぎる。

194:デフォルトの名無しさん
16/12/02 12:36:41.22 oWLJBZXg.net
AnsiString::data()のパクリか…

195:デフォルトの名無しさん
16/12/02 12:38:30.29 oWLJBZXg.net
いや、string::data()か

196:デフォルトの名無しさん
16/12/02 14:14:03.78 uzv70fAD.net
data()はいいけど、vectorにemplace_back()したらsize()も変化するんだが
それが渡したクラスでは反映されないってのが問題だと思ってたんだが勘違い?

197:デフォルトの名無しさん
16/12/02 14:59:13.58 7EcjjmS3.net
俺もそう思ってた
もっといえば要素増やすとdata()の場所がかわってアクセス違反になるかもしれなくて困ると言うことかと

198:デフォルトの名無しさん
16/12/02 15:03:09.14 uzv70fAD.net
>>197
あーそれはあるね
どんどん要素を増やして行くと再newしてそこに全部要素コピーされなおして
元のアドレスは無効になるってのがあったな
だからvectorをメンバに持つのを頑なに拒否する理由がわからない

199:デフォルトの名無しさん
16/12/02 15:13:55.45 kfHVwGjq.net
なんだか急にスレのレベルが落ちたのはなぜ?
他の場所で使うためのvectorをメンバ変数にするとか勝手なこと言いだしているし、精神病っぽいんだが。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch