Vector C++

#include 
#include 
#include 
using namespace std;
template 
void print(T& c){
   for( typename T::iterator i = c.begin(); i != c.end(); i++ ){
      std::cout << *i << endl;
   }
}
void doubler( int a[], int length ){
   for( int i = 0; i < length; ++i )
      a[i] *= 2;

int main( ){
   vector data( 5, 1 );
   partial_sum( data.begin(), data.end(), data.begin() );
   print( data );
   if( !data.empty() ) {
      doubler( &data[0], static_cast( data.size() ) );
      print( data );
   }
}