#include <iostream>
#include <vector>
#include <array>
#include <stdio.h>
#include "stlav_make_unique.hpp"
using namespace std;
typedef array<int,1000> LargeArray ;
int main()
{
vector<unique_ptr<LargeArray > > vec ;
unique_ptr<LargeArray > p = fut_stl::make_unique<LargeArray >();
vec.push_back(std::move(p) ) ;
vec.push_back(std::move(fut_stl::make_unique<LargeArray >()) ) ;
int vecsize , arraysize;
vecsize = vec.size() ;
arraysize = vec[0]->size() ;
cout << "vec.size=" << vecsize << endl ;
cout << "LargeArray.size=" << arraysize << endl ;
for(int idx=0;idx<vecsize;idx++)
{
LargeArray* p = vec[idx].get() ;
for(int idy=0;idy<arraysize;idy++)
(*p)[idy] = idx + idy ;
}
cout << (*vec[0])[0] << " " << (*vec[0])[arraysize-1] << endl ;
cout << (*vec[1])[0] << " " << (*vec[1])[arraysize-1] << endl ;
}
[test]$ g++ --std=c++0x vector_template2.cpp -o vector_template2.exe
[test]$ ./vector_template2.exe
vec.size=2
LargeArray.size=1000
0 999
1 1000