Proszę o pomoc w dokończeniu zadania.
W poniższym zadaniu mam dwa problemy, z którymi nie mogę dać sobie rady:
- Zdefiniowanie metody wypiszZalaczniki() prezebiegającej listę i wykorzystanie jej w metodzie wypisz()
- Zdefinowanie operator+(Zalacznik), który będzie dodawał załącznik do wiadomości
Bardzo proszę o jakieś wskazówki, gdyż męczę się już z tym od dłuższego czasu:/
#include <cstdlib>
#include <iostream>
using namespace std;
enum priorytet{niski, sredni, wysoki};
class Wiadomosc
{
class Zalacznik
{
public:
string typ;
Zalacznik *next;
public:
Zalacznik(string _typ)
:typ(_typ)
{
next = NULL;
}
void wypiszZalaczniki()
{
while (next != NULL)
{
cout << next -> typ << " ";
next = next -> next;
}
}
};
private:
string tresc;
priorytet priorytetWiadomosci;
Zalacznik *zalaczniki;
public:
Wiadomosc()
: tresc("brak"){};
Wiadomosc(string _tresc)
: tresc(_tresc){};
Wiadomosc(string _tresc, priorytet _priorytetWiadomosci)
: tresc(_tresc), priorytetWiadomosci(_priorytetWiadomosci){};
~Wiadomosc(){};
void wypiszPriorytet() const
{
if (priorytetWiadomosci == wysoki) cout << "Wysoki priorytet!!!";
else if (priorytetWiadomosci == sredni) cout << "Sredni priorytet.";
else if (priorytetWiadomosci == niski) cout << "Niski priorytet.";
else cout << "Nieokreslony priorytet.";
}
void wypisz() const
{
wypiszPriorytet();
cout << "\n" << tresc << "\n";
//zalaczniki -> wypiszZalaczniki();
}
/*Wiadomosc operator + (string _typ)
{
Zalacznik* TMP = new Zalacznik;
TMP -> typ = _typ;
TMP -> next = zalaczniki;
zalaczniki = TMP;
}*/
};
int main(int argc, char *argv[])
{
Wiadomosc wiad("Malo wazna wiadomosc.", niski);
//Wiadomosc wiad2;
//wiad2 = wiad + "zalacznik 1";
wiad.wypisz();
// wiad2.wypisz();
system("PAUSE");
return EXIT_SUCCESS;
}