-1
ベクトルのコピーは、新しいメモリを変更しようとするときにのみ割り当てる必要があります。なぜC++ Stlはメモリを節約するためにベクトルの共有リソースを使用しませんか?
#include <vector>
#include <iostream>
using namespace std;
int main()
{
vector<char> vec(100 * 1000 * 1024, 3); // allocating 100*1000*kib, nice.
vector<char> array[] = {vec,vec,vec,vec}; // now we using 500*1000*kib, VERY NICE, no more!
return 0;
}
標準では、明示的に 'std :: vector'に対するwrite-on-writeを禁止しています。 –
@ GundolfGundelfinger適切な引用の回答としてそれを書いてください。 –
@GundolfGundelfingerそれはさらに良かった:) –