// linkjono.cpp #include #include #include #include using namespace std; //const int MAX_KOKO = 10; class cAlkio { cAlkio *seuraava; string *data; public: cAlkio(const string &s) { seuraava = NULL; data = new string(s); } ~cAlkio() { delete data; } const string &Anna() const { return data; } void AsetaSeuraava(cAlkio *seur) { seuraava = seur; } } class cJonot { cAlkio *eka; cAlkio *vika; cJonot(const cJonot &) { } // ???? void operator=(const cJonot &j) {} // ??? public: cJonot(int koko=0) { eka = NULL; vika = NULL; } ~cJonot() { // pit„isi tuhota kaikki } int lisaa(const string &jono); void tulosta(ostream &os) const; void lue(istream &is); }; int cJonot::lisaa(const string &jono) { cAlkio *uusi = new cAlkio(jono); // demo... } void cJonot::tulosta(ostream &os) const { } void cJonot::lue(istream &is) { string s; while ( getline(is,s) ) { lisaa(s); } } ostream &operator<<(ostream &os, const cJonot &jonot) { jonot.tulosta(os); return os; } int main(void) { cJonot jonot(10); jonot.lisaa("Kissa"); jonot.lisaa("Korppikotka"); #if 0 ifstream fi("jonot.txt"); if ( fi ) { jonot.lue(fi); fi.close(); } #endif jonot.tulosta(cout); #if 0 ofstream f("jonot.txt"); if ( !f ) return 1; f << jonot; #endif return 0; }