Non:

codice:
vector< int > es( 5, def );
Ma:

codice:
vector< int > es( def, def + 5 );
P.S.: non passare/ritornare strutture complesse per valore, perche` vedo che lo fai spesso.