Vektoren klasse i C + + Standard Template Library tjener som et alternativ til den simple array. De er næsten lige så hurtigt som almindelige arrays , men de indeholder effektive funktioner til at tilføje og fjerne elementer fra array og skaleres dynamisk, når det er nødvendigt. Et nyttigt medlem af vektor klasse er iteratoren , der forenkler processen med iteration gennem alle de elementer, der er gemt i vektoren ved hjælp af en til - løkke . Den anden anvendte værktøj vil være den ofstream objekt i fstream bibliotek, som vil lade dig bruge den simple "<< " operatør til fil- output. Hvad du har brug
Computer
C + + compiler
Text editor eller C + + IDE
Vis Flere Instruktioner
1
Opret en C + + fil med navnet " vectorToFile.cpp " . Til denne opgave vil tre biblioteker være behov : fstream giver funktionalitet til fil I /O, iostream giver funktionalitet til I /O til standard ind og ud , som vil blive omdirigeret fra konsollen til en fil i denne aktivitet , og vektor- giver vektor klasse . Så starte med følgende erklæringer:
# include
# include
# include
using namespace std ;
2 Definer VectorToFile klasse. Denne klasse vil være en smule forsimplet . Det vil holde en vektor og en funktion for at gemme vektor til en fil
class VectorToFile {
public: .
Vector v < ; br /> GO
VectorToFile () {
}
GO
void saveToFile () {
}
GO
};
3 Skriv saveToFile () metode. Tilføj følgende linjer kode , i orden, at saveToFile () metode. Først får filnavnet fra brugeren med standard cin og cout kommandoer , som så:
char fileName [20]
GO
cout << \\ " Indtast navnet på den fil, der skal bruges: \\ "
GO
cin >> fileName
GO
< br /> Dernæst initialisere ofstream eller output-fil stream , med filnavnet og " ios :: out" . Dette vil informere ofstream at være åben for output. Andre muligheder ville være " ios :: app" , som instruerer stream til tilføje data i stedet overskrive den og " ios : binary " . , Som instruerer stream til output i binær stedet for tekst
< br /> ofstream vectorFile (filename , ios :: out)
GO
sidst gentage gennem array, ved hjælp af iterator genstand for din vektor.
std :: vector :: iterator i
GO
for (i = v.begin (); i < v.end (); + + i) {
vectorFile << * i
GO
vectorFile << endl
GO
}
4 Opret en hovedfunktion at teste klassen. Uden for klassen, erklærer den primære funktion som følger:
int main () {
VectorToFile VTF
GO
vtf.v . push_back (121)
GO
vtf.v.push_back (144)
GO
vtf.v.push_back ( 653 )
; GO
vtf.saveToFile ()
GO
}
GO
< ; br /> kompilere og køre din nye C + + -program. Input et filnavn adspurgt.