THMMY.gr

Μαθήματα Βασικού Κύκλου => Αντικειμενοστραφής Προγραμματισμός => Topic started by: Vlassis on November 30, 2015, 13:55:11 pm



Title: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Vlassis on November 30, 2015, 13:55:11 pm
Λίστες

Nα δημιουργήσετε μια κλάση Κόμβος (Node) η οποία θα έχει τη δυνατότητα να αποθηκεύει τιμές διαφορετικών τύπων καθώς σε μια μεταβλητή data και ένα δείκτη της κλάσης με ονομασία next, οποίος θα δείχνει κάθε φορά στον επόμενο κόμβο. Σε περίπτωση που δεν υπάρχει επόμενος κόμβος θα δείχνει σε NULL τιμή. Ο constructor θα δημιουργεί μια τυχαία τιμή και θα την αποθηκεύει στη μεταβλητή data. Κάθε φορά που θα δημιουργείται ένας κόμβος ο προηγούμενος κόμβος θα δείχνει σε αυτόν που δημιουργηθηκε μέσω μιας μεθόδου add. H υλοποίηση της κλάση Node θα πρέπει να υποστηρίζει διαφορετικούς τύπους χωρίς να χρησιμοποιηθεί overloading.
α) Να υλοποιήσετε την κλάση Node με τις αντίστοιχες μεθόδους
β) Να υλοποίησετε την main ώστε να επιδεικνύεται ορθή χρήση της κλάσης δημιουργώντας 4 αντικείμενα τυπώνοντας τις τιμές των αντικειμένων.


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Apostolof on November 30, 2015, 18:05:30 pm
http://trestle.icarnegie.com/content/SSD/SSD5/2.2/normal/pg-linear/pg-linked-lists/pg-list-implementation/pg-list-implementation.html


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Schro on November 30, 2015, 21:01:47 pm
http://trestle.icarnegie.com/content/SSD/SSD5/2.2/normal/pg-linear/pg-linked-lists/pg-list-implementation/pg-list-implementation.html

ooh, you.
 ::)


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Apostolof on December 01, 2015, 11:51:47 am

 :)
(http://img-comment-lol.9cache.com/media/37e03297141683028626241999_700wa_0.gif)


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Schro on December 03, 2015, 03:13:07 am
Στην εργασία ο pointer θα είναι πάντα NULL έτσι;

"Κάθε φορά που θα δημιουργείται ένας κόμβος ο προηγούμενος κόμβος θα δείχνει σε αυτόν που δημιουργηθηκε μέσω μιας μεθόδου add."
Αυτή την πρόταση βασικά δεν την πιάνω καθόλου!
Θα πρέπει να βάλουμε στην κλάση Node και μέθοδο add δηλαδή η οποία θα αλλάζει τον pointer του προηγούμενο και θα τον κάνει να δείχνει στο επόμενο και η μέθοδος αυτή θα τρέχει κάθε φορά που θα δημιουργείται ένας κόμβος οποιουδήποτε τύπου;
Επίσης όταν λέει κάθε φορά που θα δημιουργείται ένας κόμβος, όποιος και αν είναι ο τύπος του κόμβου;

Επίσης πάνω στο "Ο constructor θα δημιουργεί μια τυχαία τιμή και θα την αποθηκεύει στη μεταβλητή data. ", ξέρει κάποιος πως δημιουργώ μια τυχαία τιμή χωρίς να ξέρω τον τύπο της data;


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Apostolof on December 03, 2015, 11:51:40 am
Θα πρέπει να βάλουμε στην κλάση Node και μέθοδο add δηλαδή η οποία θα αλλάζει τον pointer του προηγούμενο και θα τον κάνει να δείχνει στο επόμενο και η μέθοδος αυτή θα τρέχει κάθε φορά που θα δημιουργείται ένας κόμβος οποιουδήποτε τύπου;
Επίσης όταν λέει κάθε φορά που θα δημιουργείται ένας κόμβος, όποιος και αν είναι ο τύπος του κόμβου;

Σωστά αυτό θέλει. Με το τελευταίο εννοεί ότι πχ μπορεί ο πρώτος κόμβος να έχει δεδομένα τύπου int και ο δεύτερος τύπου double αλλά και πάλι ο pointer του πρώτου κόμβου θα πρέπει να δείχνει στο δεύτερο αντικείμενο.

Επίσης πάνω στο "Ο constructor θα δημιουργεί μια τυχαία τιμή και θα την αποθηκεύει στη μεταβλητή data. ", ξέρει κάποιος πως δημιουργώ μια τυχαία τιμή χωρίς να ξέρω τον τύπο της data;

Πρώτα θα πάρεις ένα τυχαίο αριθμό από μία από αυτές τις συναρτήσεις που σου δίνει η c++ έτοιμες:
http://en.cppreference.com/w/cpp/numeric/random
μετά θα κάνεις type casting ως εξής:
Code:
static_cast<T>(to_tyxaio_noymero)
νομίζω θα λειτουργήσει... δε το έχω δοκιμάσει ακόμα.

EDIT: λειτουργεί ο τρόπος με το cast. Επίσης αν θες μπορείς να περιορίσεις το εύρος των τυχαίων αριθμών σε [48,123] που αντιστοιχεί στα
0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz
ώστε αν ο τύπος είναι string ή char να μη περιέχουν πολύ περίεργα σύμβολα.


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Schro on December 03, 2015, 12:59:28 pm
. . .

Thank you!  ^hello^


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: pentium4 on December 03, 2015, 13:23:22 pm
είναι τόσο τρομακτική όσο δείχνει;


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: akyrosHM on December 03, 2015, 23:54:25 pm
^Μάλλον όχι. Ή εγώ τα έχω κάνει σαλάτα.

Κάθε φορά που θα δημιουργείται ένας κόμβος ο προηγούμενος κόμβος θα δείχνει σε αυτόν που δημιουργηθηκε μέσω μιας μεθόδου add.
Τι θέλει να πει ο ποιητής;  ::)


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Apostolof on December 04, 2015, 00:35:41 am
^Μάλλον όχι. Ή εγώ τα έχω κάνει σαλάτα.

Κάθε φορά που θα δημιουργείται ένας κόμβος ο προηγούμενος κόμβος θα δείχνει σε αυτόν που δημιουργηθηκε μέσω μιας μεθόδου add.
Τι θέλει να πει ο ποιητής;  ::)

Είναι ασαφές...
Εγώ χρησιμοποίησα μία μεταβλητή static Node* heap που δείχνει πάντα στο τελευταίο αντικείμενο που δημιουργήθηκε.
Μετά έφτιαξα μια συνάρτηση setNext(Node* next) και μέσα στην add κάνω *heap.setNext(this) οπότε στο αντικείμενο heap (δλδ το προτελευταίο Node) καλώ την setNext και κάνω τη μεταβλητή next να δείχνει στο τωρινό (τελευταίο) αντικείμενο και ύστερα (πάλι μέσα στην add) κάνω heap = this οπότε η heap δείχνει πλέον στο τελευταίο Node. Την add τη κάλω στον constructor.


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: akyrosHM on December 04, 2015, 01:06:29 am
Θένκιου! Γενικά μάλλον μπερδεύει η εκφώνηση, παρά βοηθάει..


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Schro on December 04, 2015, 01:32:45 am
λοιπόν, σήμερα πέρασα από το γραφείο του και τον ρώτησα και μου είπε ότι δεν πρέπει να συνδέουμε μεταξύ τους κόμβους διαφορετικών τύπων. δηλαδή θα δημιουργήσουμε για παράδειγμα 2 nodes integers και θα βάλουμε τον έναν να δείχνει στον άλλο, αλλά αν δημιουργήσουμε και δυο κόμβους double δεν χρειάζεται να τους συσχετίσουμε με τους integer. το 'χει κανένας αυτό; προσπάθησα να το εξηγήσω όσο μπορούσα.

για την μέθοδο add εγώ του είπα ότι την υλοποίηση σαν συνάρτηση μέλους της τάξης και ότι δεν την καλώ μέσα στον constructor και μου είπε ότι δεν υπάρχει πρόβλημα μ'αυτό.

όλα αυτά με κάθε επιφύλαξη.

είναι τόσο τρομακτική όσο δείχνει;
δεν είναι τόσο όσο δείχνει. απλά η εκφώνηση είναι λίγο περίεργη.


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: pentium4 on December 07, 2015, 20:51:18 pm
λοιπόν, σήμερα πέρασα από το γραφείο του και τον ρώτησα και μου είπε ότι δεν πρέπει να συνδέουμε μεταξύ τους κόμβους διαφορετικών τύπων. δηλαδή θα δημιουργήσουμε για παράδειγμα 2 nodes integers και θα βάλουμε τον έναν να δείχνει στον άλλο, αλλά αν δημιουργήσουμε και δυο κόμβους double δεν χρειάζεται να τους συσχετίσουμε με τους integer. το 'χει κανένας αυτό; προσπάθησα να το εξηγήσω όσο μπορούσα.

για την μέθοδο add εγώ του είπα ότι την υλοποίηση σαν συνάρτηση μέλους της τάξης και ότι δεν την καλώ μέσα στον constructor και μου είπε ότι δεν υπάρχει πρόβλημα μ'αυτό.

όλα αυτά με κάθε επιφύλαξη.



δε μΕ λέτε, για τα bold, εγώ έκανα μια κλάση λίστα με παράμετρο Τ, την ίδια της κλάσης node, και στη main απλά δημιουργώ τη λίστα (1 φορά)
και μετά καλώ μια συνάρτηση addNode της κλάσης λίστα η οποία στην ουσία δημιουργεί επιπλέον κόμβο αλλά του ίδιου τύπου
δηλαδή η λίστα μου έχει μόνο 1 τύπο δεδομένων
είναι κομπλέ αυτό ή στη main πρέπει να δημιουργώ 1-1 τα αντικείμενο της Node και να περνάω  τους Pointers σε κάποια συνάρτηση add ?


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Apostolof on December 07, 2015, 21:26:10 pm
...

δε μΕ λέτε, για τα bold, εγώ έκανα μια κλάση λίστα με παράμετρο Τ, την ίδια της κλάσης node, και στη main απλά δημιουργώ τη λίστα (1 φορά)
και μετά καλώ μια συνάρτηση addNode της κλάσης λίστα η οποία στην ουσία δημιουργεί επιπλέον κόμβο αλλά του ίδιου τύπου
δηλαδή η λίστα μου έχει μόνο 1 τύπο δεδομένων
είναι κομπλέ αυτό ή στη main πρέπει να δημιουργώ 1-1 τα αντικείμενο της Node και να περνάω  τους Pointers σε κάποια συνάρτηση add ?

Εσύ έκανες μια υλοποίηση παρόμοια με αυτή του link που πόσταρα δηλαδή; Εγώ (μετά την απάντηση του Schro) έκανα αυτό που περιγράφεις στο τέλος... Νομίζω είσαι κομπλέ, δε χρειάζεται να κάνεις κάτι άλλο αφού κάθε list που δημιουργείς είναι ενός τύπου και δε τα συνδέεις μεταξύ τους.

ΥΓ: Ντροπή! Αίσχος... να κάνεις πλάκα για ένα τόσο επιφανές μέλος του φόρουμ!!
barbie95
Posts:    0 (0 per day)
Position:    Αρχάριος/Αρχάρια
Date Registered:    January 28, 2014, 09:20:18 am
Last Active:    Today at 07:41:15 pm

Just lurking, huh?

ΥΓ2: γτ γράφουμε μόνο εμείς οι 4 που είμαστε όλοι >5 εξ. οεο;


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Nerevar on December 07, 2015, 21:28:19 pm
ΥΓ2: γτ γράφουμε μόνο εμείς οι 4 που είμαστε όλοι >5 εξ. οεο;

Οι μικροί είναι πολύ ντροπαλοί για να ποστάρουν,διαβάζουν τα topics μόνο.

το facebook είναι πιο φιλικό για τους ντροπαλούς..


Title: Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: pentium4 on December 07, 2015, 21:28:19 pm
οκ θενξ !!

μάλλον γιατί καιγόμαστε να τελειώνουμε :P και εγώ στην ηλικία τους την είχα παρατήσει τη c++ :P

ΥΓ2: γτ γράφουμε μόνο εμείς οι 4 που είμαστε όλοι >5 εξ. οεο;

Οι μικροί είναι πολύ ντροπαλοί για να ποστάρουν,διαβάζουν τα topics μόνο.

το facebook είναι πιο φιλικό για τους ντροπαλούς..

 :D :D ;D ;D ;D


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Schro on December 08, 2015, 00:31:09 am
. . .
ΥΓ2: γτ γράφουμε μόνο εμείς οι 4 που είμαστε όλοι >5 εξ. οεο;

τρομάζουμε τους μικρούς.  ;D
καλά δουλεύει το team work μέχρι στιγμής πάντως υπάρχει μια συνεννόηση!  ;)
άσε που η pentium κοροιδεύει τα καινούργια μέλη του φόρουμ για τα username τους.  

ps : ψηθείτε να χρωστάτε και αρχ. υπολογιστών για το επόμενο εξάμηνο  ;D


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Apostolof on December 08, 2015, 01:22:53 am
ps : ψηθείτε να χρωστάτε και αρχ. υπολογιστών για το επόμενο εξάμηνο  ;D

Είναι ανάμεσα στα 7 μαθήματα που χρωστάω από το 4ο εξάμηνο  :-[ :(


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Schro on December 08, 2015, 01:38:25 am
. . .

good! μια απ΄ τα ίδια και εδώ!  ;)


Title: Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: pentium4 on December 08, 2015, 02:33:43 am
στην τελική, αν είναι σωστή η εργασία μου, μέχρι που το διασκέδασα κιόλας όταν έβαλα για παράμετρο char και έβγαλε ιερογλυφικά

(όσο περνάνε τα χρόνια στη σχολή καίγεσαι)


Title: Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: zwitsa on December 09, 2015, 00:35:12 am
την data στην κλάση τι την δηλώνουμε;  :-\


Title: Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Apostolof on December 09, 2015, 00:52:26 am
την data στην κλάση τι την δηλώνουμε;  :-\

Πρέπει να κάνεις template κλάση για να υποστηρίζει διαφορετικούς τύπους. Τα δεδομένα data θα είναι οποιουδήποτε τύπου, δηλαδή αν έχεις δηλώσει template <typename T> θα είναι T.
Εμένα είναι έτσι η κλάση:
Code:
template <typename T>
class Node{
    private:
        T data;
        ...
    public:
        ...
};


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: ilektrik on December 09, 2015, 12:43:20 pm
EDIT: λειτουργεί ο τρόπος με το cast. Επίσης αν θες μπορείς να περιορίσεις το εύρος των τυχαίων αριθμών σε [48,123] που αντιστοιχεί στα
0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz
ώστε αν ο τύπος είναι string ή char να μη περιέχουν πολύ περίεργα σύμβολα.

Αυτό με το type casting το καταλαβαίνω... ο τύπος T όμως πως θα καθορίζεται και αυτός τυχαία; Θα πρέπει να αποτελεί είσοδο στον constructor και θα δίνεται από τον χρήστη κάθε φορά που δημιουργείται αντικείμενο;  :???:


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Apostolof on December 09, 2015, 12:59:23 pm
...
Αυτό με το type casting το καταλαβαίνω... ο τύπος T όμως πως θα καθορίζεται και αυτός τυχαία; Θα πρέπει να αποτελεί είσοδο στον constructor και θα δίνεται από τον χρήστη κάθε φορά που δημιουργείται αντικείμενο;  :???:

Ο τύπος καθορίζεται τη στιγμή που δημιουργείς ένα αντικείμενο της κλάσης. Δηλαδή στη main σου μόλις δημιουργήσεις ένα αντικείμενο έτσι: Node<int> myNode1 το Τ θα είναι τύπου int για αυτό το αντικείμενο, ενώ αν λίγο παρακάτω κάνεις Node<char> myNode2 το T θα είναι τύπου char για το αντικείμενο myNode2. Σε αυτή την άσκηση δε χρησιμοποίησα καθόλου είσοδο από τον χρήστη.
Αν θες διάβασε και αυτό (προς το τέλος) για να καταλάβεις καλύτερα τα templates: http://www.cplusplus.com/doc/tutorial/templates/
έχει και παράδειγμα.

Επίσης κάτι που διάβασα, δε γίνεται να γράψεις στο στυλ: main.cpp + kati.h + kati.cpp όταν δουλεύεις με templates, πρέπει όλος ο κώδικάς σου να είναι στο .h άρα θα έχεις τα αρχεία main.cpp + kati.h


Title: Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: ilektrik on December 09, 2015, 13:06:44 pm
Ευχαριστώ!   ;D


Title: Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: zwitsa on December 09, 2015, 17:23:03 pm
την data στην κλάση τι την δηλώνουμε;  :-\

Πρέπει να κάνεις template κλάση για να υποστηρίζει διαφορετικούς τύπους. Τα δεδομένα data θα είναι οποιουδήποτε τύπου, δηλαδή αν έχεις δηλώσει template <typename T> θα είναι T.
Εμένα είναι έτσι η κλάση:
Code:
template <typename T>
class Node{
    private:
        T data;
        ...
    public:
        ...
};

α είσαι προ εσύ... θενκ γιουυυυ :)


Title: Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: zwitsa on December 09, 2015, 17:55:02 pm
δεν κατάλαβα πως θα κάνουμε 1 λίστα αλλά ουσιαστικά 1 λίστα για κάθε τύπο; ουσιαστικά το next τι θα δείχνει; :/


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: elektra on December 09, 2015, 19:04:29 pm
Quote
Πρώτα θα πάρεις ένα τυχαίο αριθμό από μία από αυτές τις συναρτήσεις που σου δίνει η c++ έτοιμες:
http://en.cppreference.com/w/cpp/numeric/random
μετά θα κάνεις type casting ως εξής:
Code:
static_cast<T>(to_tyxaio_noymero)
νομίζω θα λειτουργήσει... δε το έχω δοκιμάσει ακόμα.

EDIT: λειτουργεί ο τρόπος με το cast. Επίσης αν θες μπορείς να περιορίσεις το εύρος των τυχαίων αριθμών σε [48,123] που αντιστοιχεί στα
0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz
ώστε αν ο τύπος είναι string ή char να μη περιέχουν πολύ περίεργα σύμβολα.

Δημιουργώ εναν τυχαιο αριθμό με τη rand() στο διαστημα που προτείνεις κ εσυ, αλλα δυστυχως στο vs2013 μου χτυπάει στην static_cast<T> (randNum) το εξής λάθος...

error C2440: 'static_cast' : cannot convert from 'int' to 'std::string'

Γενικα λογικο λαθος για την static_cast αλλα ειπες οτι δούλεψε σε εσενα.Τι κάνω τόσο διαφορετικά;  :-[


Title: Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: Apostolof on December 09, 2015, 20:08:42 pm
Quote
...

Δημιουργώ εναν τυχαιο αριθμό με τη rand() στο διαστημα που προτείνεις κ εσυ, αλλα δυστυχως στο vs2013 μου χτυπάει στην static_cast<T> (randNum) το εξής λάθος...

error C2440: 'static_cast' : cannot convert from 'int' to 'std::string'

Γενικα λογικο λαθος για την static_cast αλλα ειπες οτι δούλεψε σε εσενα.Τι κάνω τόσο διαφορετικά;  :-[

Δε μπορείς να κάνεις έτσι απλά cast από οτιδήποτε σε string!

Αν θες το πρόγραμμά σου να υποστηρίζει και string lists θα πρέπει να κάνεις template specialization για τον τύπο string και επειδή το μόνο κομμάτι που σε ενοχλεί είναι το cast (που λογικά το έχεις στον constructor) χρειάζεται να κάνεις specialization μόνο στη μέθοδο του constructor.

Για το cast μπορείς να δεις εδώ:
http://stackoverflow.com/questions/5590381/easiest-way-to-convert-int-to-string-in-c
Η rand συγκεκριμένα επιστρέφει int (αν θυμάμαι καλά)

Αυτό που θα έκανα εγώ είναι:
Code:
//Default class constructor
template <typename T>
Node<T>::Node(){
    data = static_cast<T> rand();
    next = nullptr;
}

//Specialized constructor for string values
template <>
Node<string>::Node(){
    stringstream ss;
    ss << (char)(rand());
    data = ss.str();
    next = nullptr;
}

ΕΔΙΤ: μη ξεχάσεις να κάνεις #include <sstream> και #include <string> !!


Title: Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: elektra on December 09, 2015, 21:02:30 pm
Αψογος! Σε ευχαριστω  :)

Ναι ήθελα και string λίστα γι αυτό χτυπούσε. Παω να δοκιμάσω την specialization τώρα

Ευχαριστώ κ πάλι!


Title: Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
Post by: zisismpatz on December 09, 2015, 21:41:09 pm
Παιδια, επειδη γενικα το θεμα  pointers δεν το πολυνιωθω,  μπορει καποιος να μου εξηγησει τι πρεπει να κανει ο next και πως θα υλοποιηθει στην κλαση Node? και γενικα ..τι παιζει με τα templates και pointers?