Hej!
Chcialabym napisac taki prosty programik skladajacy sie z 2 klas:
klasa osoba i klasa wektor, ktora przechowuje obiekty klasy osoba.
Oto moj rezultat:
Kod:
#include<iostream>
#include<string>
#include<vector>
using namespace std;
class osoba
{
char nazwisko[30];
public:
osoba(const char* n = NULL)
{strcpy(nazwisko, (n ? n: "null"));}
//------------------------
friend ostream &operator<<(ostream &s, const osoba &o);
friend ostream &operator<<(ostream &s, const osoba *wsk);
};
ostream &operator<<(ostream &s, const osoba &o)
{
s<< o.nazwisko;
return s;
}
class wektor
{
vector<osoba>tabl;
int ile_obiektow;
public:
wektor(): ile_obiektow(0){};
int wstaw(const osoba &nowy, int gdzie = -1);
void usun(int nr);
friend ostream& operator<<(ostream &stru, wektor &spis);
};
oostream& operator<<(ostream& stru, wektor& spis)
{
stru<< " ";
for (int i = 0; i<spis.size(); i++)
{
stru << i <<")"
<< spis.tabl[i]<<" ";
}
stru << endl;
return stru;
}
int wektor:: wstaw(const osoba &nowy, int gdzie)
{
if(ile_obiektow == pojemnosc_wektora)
{
cout<<"wektor juz zapelnionych\n";
return 0;
}
if(gdzie < 0 || gdzie > ile_obiektow)
{
gdzie = ile_obiektow;
}
rozsun(gdzie);
tab.push_back(nowy);
ile_obiektow++;
return 1;
Chcialabym zapytac jak w akiej sytuacji powinno wygladac wyswieltanie wartosci wektora w funkici operatora <<
Bede niezmiernie wdzieczna za wskazowki.