memsetの使用に関するMark Ransomsの回答によると、私はmemsetを使用しvector<int>
てすべての要素に値を割り当てています。
memset(&match_begin[0], 0xff , sizeof(match_begin[0]) * match_begin.size());
パフォーマンスが大幅に向上しstd::fill
、正常に動作します (g++ 4.3.2、64 ビット Linux)。のように、このコードは安全ですか? std::vector 実装は、データのメモリ割り当てが連続することを常に保証しますか? stl ライブラリの将来の (または別の) 実装で、これが変更され、後でコードが壊れる可能性はありますか?