public: Horse(){} Horse(double h,string c,string n,int a):animal(n,a){ itsheight=h; itscolor=c; } void fonialogou(){ cout<<"xlimintrisma"<<endl;} };

Σχετικά έγγραφα
Προγραμματισμός Υπολογιστών με C++

Εισαγωγή στον Προγραμματισμό με C++

Εργαστήριο 10 Κλάσεις

Προγραμματισμός Ι. Κλάσεις και Αντικείμενα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Συµβολοσειρές - Strings

Τίτλος Μαθήματος: Ηλεκτρονικοί Υπολογιστές IΙΙ. Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης

Κλήση Συναρτήσεων ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ. Γεώργιος Παπαϊωάννου ( )

Προγραμματισμός Υπολογιστών με C++

12. ΑΛΦΑΡΙΘΜΗΤΙΚΑ. υο είδη αλφαριθµητικών Τα αλφαριθµητικά της C πίνακες τύπου char Ta αντικείµενα της κλάσης string

Πολυμορφισμός. Σήμερα!

Εντολές εισόδου - εξόδου. Εισαγωγή στη C++

Αντικειμενοστραφείς Γλώσσες Προγραμματισμού C++ / ROOT

Προγραμματισμός Υπολογιστών με C++

19. ΠΡΟΤΥΠΑ (TEMPLATES)

ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ. Σχηματική παράσταση του προγράμματος. logariasmos

Εργαστήριο 3 Εντολή for while, do while

242 -ΕισαγωγήστουςΗ/Υ

ΣΤΟΙΧΕΙΑ ΤΗΣ ΓΛΩΣΣΑΣ C++ Πέρασμα παραμέτρων, συναρτήσεις δόμησης και αποδόμησης

Αντικειμενοστραφείς Γλώσσες Προγραμματισμού C++ / ROOT

ΚΑΤΑΣΚΕΥΑΣΤΕΣ ΑΝΤΙΓΡΑΦΗΣ

Προγραμματισμός ΙI (E)

Προγραμματισμός Υπολογιστών με C++

Πληροφορική 2. Γλώσσες Προγραμματισμού

Προγραμματισμός Ι. Πίνακες, Δείκτες, Αναφορές και Δυναμική Μνήμη. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Δομές Δεδομένων και Αλγόριθμοι (Γ εξάμηνο) Τμήμα Μηχανικών Πληροφορικής ΤΕ, ΤΕΙ Ηπείρου. Άσκηση εργαστηρίου #6 (Υλοποίηση δυαδικού δένδρου αναζήτησης)

17TimeThis.h function returns reference pointer to same object { return *this; }

Προγραμματισμός Υπολογιστών με C++

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι περιλαμβάνει μια μεταβλητή; ΔΕΙΚΤΕΣ. Διεύθυνση μεταβλητής. Δείκτης

Προγραμματισμός Υπολογιστών με C++

Αναφορές, είκτες και Αλφαριθμητικά

Προηγµένα Θέµατα Τεχνολογιών Υλοποίησης Αλγορίθµων

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 26/2/2008

Προγραμματισμός Υπολογιστών με C++ Φύλλο Διαγωνίσματος Ακαδημαϊκό εξάμηνο: Χειμερινό

18. ΡΕΥΜΑΤΑ(STREAMS) ΚΑΙ ΑΡΧΕΙΑ (FILES)

Εισαγωγή στην πληροφορική

Πίνακες (Arrays) Εισαγωγή στη C++

2 using namespace s t d ; 4 { 12 int t= x ; 6 x=y ; 7 y=t ; 8 } 9 11 { 13 x= y ; 14 y=t ; 15 } {

Προγραμματισμός Υπολογιστών με C++

Ονοματεπώνυμο και ΑΜ: Είχα παραδώσει εργασίες τα εξής ακαδημαϊκά έτη: Διάρκεια: 2,5 ώρες, κλειστά βιβλία και σημειώσεις ΚΑΛΗ ΕΠΙΤΥΧΙΑ!

Εισαγωγή στον Προγραμματισμό με C++

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΚΑΙ ΠΙΝΑΚΕΣ

Προγραμματισμός Υπολογιστών με C++ Φύλλο Διαγωνίσματος Ακαδημαϊκό εξάμηνο: Χειμερινό

Εισαγωγή σε αντικειμενοστραφή concepts. Και λίγη C#

Κλάσεις και αντικείμενα #include <iostream.h<

ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ ΚΑΙ ΠΟΛΥΜΟΡΦΙΣΜΟΣ

ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Α.Π.Θ. ΕΡΓΑΣΤΗΡΙΟ C++ ΕΞΑΜΗΝΟ Γ Ακαδηµαϊκό Έτος

ΠΟΛΥΜΟΡΦΙΣΜΟΣ. 4.1 Κληρονομικότητα και Αρχή της Υποκατάστασης

Αντικειμενοστραφής Προγραμματισμός

Δισδιάστατοι Πίνακες (2D Arrays) Εισαγωγή στη C++

ΣΤΟΙΧΕΙΑ ΤΗΣ ΓΛΩΣΣΑΣ C++ Constructors, Destructors, Pointers IO Streams, File Streams

Υπερφόρτωση τελεστών (operator(

Δομές δεδομένων (Structures) Εισαγωγή στη C++

Οντοκεντρικός Προγραμματισμός

Φροντιςτήριο. Linked-List

Οντοκεντρικός Προγραμματισμός

#4. Heaps (σωροί), η ταξινόμηση HeapSort, η δομή std::priority_queue της STL

1 η Προαπαιτούµενη. Κάθε οµάδα θα δηµιουργήσει ένα πρόγραµµα, µε πιο «πολύπλοκη» κληρονοµικότητα µε ιεραρχίες ή και πολλαπλή κληρονοµικότητα.

Προγραμματισμός Υπολογιστών με C++ Φύλλο Διαγωνίσματος Ακαδημαϊκό εξάμηνο: Χειμερινό

2 η Διάλεξη C++ Δρ. Χρήστος Δρόσος ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΤΜΗΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ

Υπολογιστικά Mαθηματικά II

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Ευάγγελος Γ. Ούτσιος Θεόδωρος Γ. Λάντζος Διάλεξη Νο8

3 η Διάλεξη C++ - Βασικοί τύποι δεδομένων. Δρ. Χρήστος Δρόσος ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΤΜΗΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ

8. ΠΙΝΑΚΕΣ (ARRAYS) (Πρόχειρο σχέδιο - Μαθήµατος 5) //26. Array.cpp #include <iostream> using namespace std;

Ονοματεπώνυμο και ΑΜ: Είχα παραδώσει εργασίες τα προηγούμενα ακαδημαϊκά έτη: ΚΑΛΗ ΕΠΙΤΥΧΙΑ!

Προγραμματισμός Ι. Εισαγωγή στην C++ Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Α1. Ποιο περιβάλλον χρησιµοποιείτε για να εκτελέσετε ένα πρόγραµµα C++ και πως.

Ειδικά Θέματα Ι. Σήμερα!

Αντικειµενοστρεφής Προγραµµατισµός

ΑΣΚΗΣΕΙΣ ΓΙΑ ΤΟ ΕΡΓΑΣΤΗΡΙΟ 2

Οντοκεντρικός Προγραμματισμός

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Συναρτήσεις II Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Δομές Δεδομένων και Αλγόριθμοι - Εργαστήριο 1 Βασικές έννοιες στη C και στη C++

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι είναι οι πίνακες; Μονοδιάστατοι πίνακες. Απλές μεταβλητές: Κεντρική μνήμη

Ασκήσεις &απαντήσεις Επανάληψης

Αρχεία Κεφαλίδων ΑΡΧΕΙΑ ΚΕΦΑΛΙΔΩΝ. Γεώργιος Παπαϊωάννου ( )

Δομές Δεδομένων και Αλγόριθμοι

4 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ

242 -ΕισαγωγήστουςΗ/Υ

Προγραμματισμός Υπολογιστών με C++

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι είναι οι πίνακες; Μονοδιάστατοι πίνακες. Απλές μεταβλητές: Κεντρική μνήμη

Υπερφόρτωση (Overloading) Υπέρβαση (Overriding) - Upcasting Downcasting Final classes, methods

Γ7.2 Συμβολοσειρές (Strings) Γ Λυκείου Κατεύθυνσης

Οντοκεντρικός Προγραμματισμός

ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ ΠΟΛΥΜΟΡΦΙΣΜΟΣ

Δυναμική μνήμη με πίνακες και λίστες

Διανύσματα στις 3 Διαστάσεις

Συμβολοσειρές ΣΥΜΒΟΛΟΣΕΙΡΕΣ. Γεώργιος Παπαϊωάννου ( )

242 -ΕισαγωγήστουςΗ/Υ

ΜΑΘΗΜΑ: Αντικειμενοστρεφής Προγραμματισμός

HY150a Φροντιστήριο 3 24/11/2017

Οντοκεντρικός Προγραμματισμός

Ερώτημα Α 1. Να γράψετε τις εντολές που πραγματοποιούν τα ακόλουθα:

Ερωτήσεις και απαντήσεις στα θέματα του κανονισμού κατάρτισης

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Μονοδιάστατοι πίνακες Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Δείκτες Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Πολυμορφισμός. Σήμερα! Virtual Κληρονομικότητα Mixin classes Αφηρημένοι τύποι δεδομένων Pure Virtual συναρτήσεις

Συναρτήσεις (Functions) Εισαγωγή στη C++

POINTERS, AGGREGATION, COMPOSITION

Εισαγωγή στον Προγραμματισμό με C++

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Transcript:

//VK Από Βάτσου Χριστίνα //VK για το σχολιό σου στο τέλος...όπως σας είπα και στο εργαστήριο //VK Η διαγραφή της µνήµης δεν διαγράφει τον δείκτη που δείχνει σε αυτή //VK ούτε αλλάζει την τιµή της διεύθυνσης του δείκτη //VK έτσι η διεύθυνση παύει να είναι έγκυρη. //VK να βάλεις και µηνύµατα στους δοµητές για να δεις //VK πως γίνεται η δηµιουργία... #include <iostream> #include <stdlib.h> using namespace std; class Animal string itsname; int itsage; Animal() Animal(string n,int a) itsname=n; itsage=a; ; class Horse: virtual public Animal double itsheight; Horse() Horse(double h,string c,string n,int a):animal(n,a) itsheight=h; void fonialogou() cout<<"xlimintrisma"<<endl; ; class Bird: virtual public Animal bool itsmigration; Bird() Bird(bool m,string c,string n,int a):animal(n,a) itsmigration=m; void fonipouliou() cout<<"titivisma"<<endl; ; class Pegasus: public Horse, public Bird int itsbelievers;

Pegasus() Pegasus(int b,double h,string c,bool m,string n,int a):horse(h,c,n,a),bird(m,c,n,a),animal(n,a) itsbelievers=b; void foni() cout<<"xlimintrotitivisma"<<endl; ; int main(int argc, char *argv[]) Pegasus*p=new Pegasus(5,15,"pink",true,"babis",20);//dimiourgia antikeimenou p->foni();//klisi methodou p->fonipouliou(); p->fonialogou(); delete p;//diagrafi tou pointer tou antikeimenou p,etsi den pauei na iparxei to antikeimeno efoson //den antikatastathoun oi times tou apo allo antikeimeno system("pause"); return 0;

//VK Από Πούνιου Ελένη //VK Ισχύουν τα ίδια σχόλια που έβαλα και στην Χριστίνα #include <iostream> #include <cstdlib> using namespace std; //klasi goneas class Animal string itsname; int itsage; ; Animal(string n,int a) itsname=n; itsage=a; //klironomikotita class Horse:virtual public Animal int itsheight; ; Horse(string n,int a,int h,string c):animal(n,a) itsheight=h; void gkarisma() cout<<"xlimintrisma,la La..."<<endl; class Bird:virtual public Animal bool itsmigration; Bird(string n,int a,bool m,string c):animal(n,a) itsmigration=m; void kelaidima()

; cout<<"tsiou Tsiou,Tout Tout..."<<endl; class Pegasus: public Bird, public Horse int itsbelievers; Pegasus(int b,int h,string c,bool m,string n,int a):horse(n,a,h,c),bird(n,a,m,c),animal(n,a) itsbelievers=b; ; int main(int argc,char *argv[]) Pegasus*p=new Pegasus(13,10,"red",true,"sougias",25);//dimiourgia antikeimenou p->gkarisma(); //klisi methodou p->kelaidima(); //klisi methodou delete p; //apodesmeusi mnimis tou pointer p(pegasus) kai efoson den bazoume alles times synexizoun na yparxoun oi proigoumenes times alla diagrafoume to antikeimeno system("pause"); return 0;

//VK Από Αντώνιο Αντωνιάδη - 15 ANIMALS #include <cstdlib> #include <iostream> #include <iomanip> using namespace std; // sth dhmiourgia antikeimenou trexei o constructor ths super? //VK ηµιουργείται πάντα πρώτα ο γονιός και µετά το παιδί //VK κάτω από ορισµένες συνθήκες, εαν το παιδί δεν έχει δοµητή //VK θα χρησιµοποιήσει του γονιού. //VK για τις πιο σύνθετες συναρτήσεις δόµησης της βασικής κλάσης, //VK θα πρέπει να γραφτούν συναρτήσεις της παράγωγης. //VK αλλά γενικότερα έχε στο νου, το ότι το παιδί πρέπει να ορίζει τον πατέρα του! class Animal // protected?: //VK αν τα βάλεις, τότε τα βλέπει και η παράγωγος κλάση string itsname; int itsage; Animal(string N, int A) cout << "Animal Created -> "; itsname=n; itsage=a; ~Animal()cout << "~Animal --> bye-bye!" << endl; string get_itsname() return itsname; ; int get_itsage() return itsage; class Horse : virtual public Animal double itsheight; Horse(string N, int A, double H, string C) : Animal(N, A) cout << "Horse Created -> "; itsheight=h; itscolor=c; double get_itsheight() return itsheight; string get_itscolor() return itscolor;

; class Bird : virtual public Animal bool itsmigration; Bird(string N, int A, bool M, string C) : Animal(N, A) cout << "Bird Created -> "; itsmigration=m; itscolor=c; ; bool get_itsmigration() return itsmigration; string get_itscolor() return itscolor; class Pegasus : public Horse, public Bird int itsbelievers; Pegasus(string N, int A, double H, bool M, string C, int B) : Animal (N, A), Horse(N, A, H, C), Bird(N, A, M, C) cout << "Pegasus Created"; cout << endl; itsbelievers=b; ; int get_itsbelievers() return itsbelievers; int main(int argc, char *argv[]) cout << endl; Pegasus PegObj1("MyName",20,30,true,"Hello!",50); cout << endl << endl; cout << "PegObj1 Age: " << PegObj1.get_itsAge() << endl <<endl << endl << endl; Pegasus* PegObj2 = new Pegasus("MyName2",25,37,false,"Hey!",52); cout << endl << endl; cout << "PegObj2 Age: " << PegObj2->get_itsAge() << endl<<endl; delete PegObj2; cout << "PegObj2 deleted" << endl<< endl << endl << endl << endl << endl; system("pause"); return EXIT_SUCCESS;