C++相談室 part51
■ このスレッドは過去ログ倉庫に格納されています
0343デフォルトの名無しさん
2006/07/27(木) 21:26:14void hoge(void* buf,size_t& written_size)
vector<char> v;
size_t written_size;
v.resize(500);//500はAPI hogeが書き込む可能性のある最大の長さ
hoge(&v[0],&written_size);
このままだとvは自分の長さを知らないため、
v.resize(written_size);
としているんですが、最後のresize()で
内部のバッファのアドレスが変わってしまう可能性はあるんでしょうか
hogeが内部でバッファのアドレスを保持して使うので、
アドレスが変わってしまうとヤバスです
今のところ無事に動いてるのですが・・・
最後のresizeで前の状態より長さが大きくなる事はないので
大丈夫かとは思うんですが 実装によりけり?
■ このスレッドは過去ログ倉庫に格納されています