A vederla così, direi che basta un vector di double in cui mettere i dati da elaborare e in cui mettere i risultati.
Qualcosa di più elaborato potrebbe essere definire due operatori per inserire o estrarre i dati direttamente dalla classe.
Qualcosa tipo:
codice:
   ostream << classe_componente;
   istream >> classe_componente;
Stavi pensando questo per caso?
In ogni caso non vedo la necessità di creare uno stream apposito per i double.