Mam stworzony vector, który przechowuje obiekty danej klasy. Chcę stworzyć funkcję, która pozwala na dodawanie elementów do tego vectora. Poniżej kod funkcji, który nie działa i to jest dla mnie zrozumiałe (funkcja ta nie ma "dostępu" do vectora). Ale nie mam pomysłu na rozwiązanie problemu.
Funkcja Dodaj_ksiazke
void Ksiazka::Dodaj_ksiazke()
{
bool Nokladka;
short Nilosc_sztuk, Nid, Nilosc_stron;
float Ncena;
string Ntytul, Nautor, Ngatunek, Nwydawnictwo;
cout << "Podaj dane." << endl;
cout << "Tytul: "; cin >> Ntytul;
cout << "Autor: "; cin >> Nautor;
cout << "Gatunek: "; cin >> Ngatunek;
cout << "Wydawnictwo: "; cin >> Nwydawnictwo;
cout << "Ilosc stron: "; cin >> Nilosc_stron;
cout << "Okladka: "; cin >> Nokladka;
cout << "Cena: "; cin >> Ncena;
cout << "Ilosc sztuk: "; cin >> Nilosc_sztuk;
ksiazki.push_back(Ksiazka(Ntytul,Nautor,Ngatunek,Nwydawnictwo,Nilosc_sztuk,Nid,
Nilosc_stron,Ncena,Nokladka));
}
Nie wiem co jest bardziej poprawne, deklaracja vectora wewnątrz main() czy poza ciałem funkcji ?
Funkcja main
int main()
{
vector<Ksiazka> ksiazki;
getch();
return 0;
}