ΔΙΔΑΚΩΝ: ΠΑΡΙ ΜΑΣΟΡΟΚΩΣΑ

Σχετικά έγγραφα
ΔΙΔΑΚΩΝ: ΠΑΡΙ ΜΑΣΟΡΟΚΩΣΑ

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

ΔΙΔΑΚΩΝ: ΠΑΡΙ ΜΑΣΟΡΟΚΩΣΑ

ΔΙΑΒΗΣΗ -ΠΑΙΔΙ ΚΑΙ ΔΙΑΣΡΟΦΗ

ATTRACT MORE CLIENTS ΒΕ REMARKABLE ENJOY YOUR BUSINESS ΣΕΛ. 1

2 η ΕΝΟΤΗΤΑ Απεικόνιση και καταγραφή των Δεδομένων Ρύθμιση σήματος

Διδακτική τωμ Μαθηματικώμ (Β Φάση ΔΙ.ΜΔ.Π.Α)

x και επειδή είμαι ρσμευήπ, διαςηοεί ρςαθεοό ποόρημξ. f x 2f x x x x x 2 x x x g x 0 g x f x x 0 f x x, 1 f x 2f x x x x g x 0 για κάθε

Επαμαληπτική Άσκηση Access

ΠΟΤΔΑΣΗΡΙΟ ΝΕΟΕΛΛΗΝΙΚΗ ΓΛΩΑ. Δραγάτςη 8, Πειραιάσ Ιερ. Πατριάρχου 45, Αμπελόκηποι

ΤΕΙ Κεντρικής Μακεδονίας. Τμήμα ΠΜ ΤΕ & ΜΤΓ ΤΕ Σημειώσεις Εργαστήριου Βάσεων Δεδομένων Πασχάλης Γάκος ΕΔΙΠ

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Κετάλαιξ 6. Τβοιδικέπ Δξμέπ Δεδξμέμχμ

ΕΚΠΑΙΔΕΤΣΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΑΘΗΜΑΣΩΝ Γ.Ν. ΑΜΥΙΑ

ΔΙΔΑΚΩΝ: ΠΑΡΙ ΜΑΣΟΡΟΚΩΣΑ

ΔΙΔΑΚΩΝ: ΠΑΡΙ ΜΑΣΟΡΟΚΩΣΑ

ΥΤΙΚΗ ΟΜΑΔΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ ΘΕΣΙΚΩΝ ΠΟΤΔΩΝ

Κξιμχμικά δίκςσα ρςξ Internet Η μέα ποόκληρη ρςημ επικξιμχμία για ςη μέα γεμιά

Πλξήγηρη ρςξ διαδίκςσξ

Ermis Design. Ιατηγορία: DESIGN / VISUAL COMMUNICATION / ΟΠΞΩΗΖΘΙΑ ΔΘΑΤΖΛΘΡΘΙΑ ΔΜΣΟΑ

ΧΗΥΙΑΚΟ ΔΚΠΑΙΔΔΤΣΙΚΟ ΒΟΗΘΗΜΑ «ΥΤΙΚΗ ΘΔΣΙΚΗ ΚΑΙ ΣΔΦΝΟΛΟΓΙΚΗ ΚΑΣΔΤΘΤΝΗ» ΦΥΣΙΚΗ ΘΔΤΙΚΗΣ ΚΑΙ ΤΔΧΝΟΛΟΓΙΚΗΣ ΚΑΤΔΥΘΥΝΣΗΣ

ΦΥΣΙΚΗ ΘΔΤΙΚΗΣ ΚΑΙ ΤΔΧΝΟΛΟΓΙΚΗΣ ΚΑΤΔΥΘΥΝΣΗΣ

ΣΥΠΥΔΑ. ΣΥζηημα διασείπιζηρ ΠΥπκαγιών ζε ΔΑζη κωνοθόπων. www. sypyda.gr

ΥΤΙΚΗ ΟΜΑΔΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ ΘΔΣΙΚΩΝ ΠΟΤΔΩΝ

M z ιραπέυξσμ από ςα Α 4,0,Β 4,0

3 η ΕΝΟΤΗΤΑ Ρύθμιση σήματος

ΥΤΙΚΗ ΟΜΑΔΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ ΘΕΣΙΚΩΝ ΠΟΤΔΩΝ

ΦΥΣΙΚΗ ΘΔΤΙΚΗΣ ΚΑΙ ΤΔΧΝΟΛΟΓΙΚΗΣ ΚΑΤΔΥΘΥΝΣΗΣ ΘΔΜΑ Α ΘΔΜΑ Β

Σςη βιβλιξθήκη ρσμάμςηρα ςξμ Βιβλιξπόμςικα πξσ έφαυμε για δξσλειά. Μάοιξπ Σςασοίδηπ Β1 Έφαυμα έμα οξζ βιβλίξ με υοσρόρκξμη.

ΔΙΔΑΚΩΝ: ΠΑΡΙ ΜΑΣΟΡΟΚΩΣΑ

Phishing s. Τι είναι και Τρόποι αντιμετώπιςησ τουσ. Ευςταθίου Κωνςταντίνοσ. Λαμπιδονίτη Χριςτίνα. Απρίλιοσ, Λευκωςία

Φσζική Γ Λσκείοσ. Θεηικής & Τετμολογικής Καηεύθσμζης. Μηταμικά Κύμαηα Αρμομικό Κύμα - Φάζη. Οκτώβρης Διδάζκωμ: Καραδημηηρίοσ Μιτάλης

Ermis Digital. Καςηγξοία: Websites - Self-Promotion Sites. Τίςλξπ Σσμμεςξυήπ: Lovable Instant Personal Snapcards

Θεωρία τησ Πληροφορίασ (Θ) ΔΙΔΑΚΩΝ: Δρ. Αναςτάςιοσ Πολίτησ

ΥΤΙΚΗ ΟΜΑΔΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ ΘΔΣΙΚΩΝ ΠΟΤΔΩΝ 6 ο ΔΙΑΓΩΝΙΜΑ (Δφ' όλης της ύλης) - ΘΔΜΑΣΑ

Η λειςξσογία ςξσ Βσζαμςιμξύ Νεοόμσλξσ

ΥΤΙΚΗ ΟΜΑΔΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ ΘΔΣΙΚΩΝ ΠΟΤΔΩΝ

Κύοιξ Συέδιξ Δοάρηπ ςηπ Αγξοάπ ςωμ Εμπξοεσμαςικώμ Μεςατξοώμ και ςωμ Logistics ςηπ Ελλάδαπ. Σωςήοηπ Σ. Τοιυάπ

ΧΗΥΙΑΚΟ ΔΚΠΑΙΔΔΤΣΙΚΟ ΒΟΗΘΗΜΑ «ΥΤΙΚΗ ΘΔΣΙΚΗ ΚΑΙ ΣΔΦΝΟΛΟΓΙΚΗ ΚΑΣΔΤΘΤΝΗ» 1 o ΔΙΑΓΩΝΙΜΑ ΙΑΝΟΤΑΡΙΟ 2015: ΔΝΔΔΙΚΣΙΚΔ ΑΠΑΝΣΗΔΙ

Τ ξ ε ύ ο ξ π ς ξ σ ξ ο ί ξ σ

Services SMART. Messaging. Bulk SMS. SMS messaging services THE + Services. IP Digital

ΝΕΤΡΩΝΙΚΑ ΔΙΚΣΤΑ - ΔΟΜΕ ΔΕΔΟΜΕΝΩΝ

ΥΤΙΚΗ ΟΜΑΔΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ ΘΕΣΙΚΩΝ ΠΟΤΔΩΝ

ΨΗΥΙΑΚΟ ΔΚΠΑΙΔΔΤΣΙΚΟ ΒΟΗΘΗΜΑ «ΥΤΙΚΗ ΟΜΑΔΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ ΘΔΣΙΚΩΝ ΠΟΤΔΩΝ» ΥΤΙΚΗ ΟΜΑΔΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ ΘΔΣΙΚΩΝ ΠΟΤΔΩΝ ΘΔΜΑ Α ΘΔΜΑ Β.

ΠΕΡΙΕΧΟΜΕΝΑ 1. ΔΤΝΑΣΟΣΗΣΕ 3 2. ΓΡΗΓΟΡΗ ΕΚΚΙΝΗΗ (QUICK START) - ΙΟΚΡΑΣΗ 4 3. ΑΝΑΛΤΣΙΚΗ ΕΠΕΞΗΓΗΗ 5

ΧΗΥΙΑΚΟ ΔΚΠΑΙΔΔΤΣΙΚΟ ΒΟΗΘΗΜΑ «ΥΤΙΚΗ ΘΔΣΙΚΗ ΚΑΙ ΣΔΦΝΟΛΟΓΙΚΗ ΚΑΣΔΤΘΤΝΗ» ΦΥΣΙΚΗ ΘΔΤΙΚΗΣ ΚΑΙ ΤΔΧΝΟΛΟΓΙΚΗΣ ΚΑΤΔΥΘΥΝΣΗΣ

ΠΡΟ: ΚΟΗΝ: ΘΕΜΑ:"Αμακξίμωρη-Ποόρκληρη για μεςάςανη σπαλλήλωμ ρςξ Γεμικό Νξρξκξμείξ Καοδίςραπ."

ΜΟΥΣΙΚΗ ΣΕ ΠΡΩΤΗ ΒΑΘΜΙΔΑ. Παρουσιάσεις εκπαιδευτικού υλικού και διδακτικής μεθοδολογίας 1-2

ΑΔΑ: 4ΑΘΩ7ΛΡ-Ψ ΠΕΡΙΛΗΦΗ ΔΙΑΚΗΡΤΞΗ ΑΝΑΡΣΗΣΔΑ ΣΟ ΓΙΑΓΙΚΣΤΟ

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

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Σηµειώσεις Θεωρίας)

ΥΤΙΚΗ ΟΜΑΔΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ ΘΔΣΙΚΩΝ ΠΟΤΔΩΝ

ΧΖΥΘΑΙΟ ΔΙΠΑΘΔΔΤΣΘΙΟ ΒΟΖΗΖΛΑ «ΥΤΘΙΖ ΗΔΣΘΙΖ ΙΑΘ ΣΔΦΜΟΚΟΓΘΙΖ ΙΑΣΔΤΗΤΜΖ» ΦΥΣΙΚΗ ΘΔΤΙΚΗΣ ΚΑΙ ΤΔΧΝΟΛΟΓΙΚΗΣ ΚΑΤΔΥΘΥΝΣΗΣ ΘΔΜΑ Α ΘΔΜΑ Β (1) n n n 90 ή (2)

Εμημεοχςική Επιρςξλή Νξ 65/2016

Τ ξ ε ύ ο ξ π ς ξ σ ξ ο ί ξ σ _ Ι ε ο α μ ε ι κ ό π

Aντικειμενοστραφής. Προγραμματισμός. Κληρονομικότητα

ΨΗΥΙΑΚΟ ΔΚΠΑΙΔΔΤΣΙΚΟ ΒΟΗΘΗΜΑ «ΥΤΙΚΗ ΟΜΑΔΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ ΘΔΣΙΚΩΝ ΠΟΤΔΩΝ» 1 o ΔΙΑΓΩΝΙΜΑ ΔΔΚΔΜΒΡΙΟ 2015: ΔΝΔΔΙΚΣΙΚΔ ΑΠΑΝΣΗΔΙ

«Να μημ χαθεί μια ακόμη γεμιά...» Ρομά και δικαίωμα στημ εκπαίδευση: όταμ το σχολείο είμαι η μόμη ελπίδα

ΔΙΔΑΚΩΝ: ΠΑΡΙ ΜΑΣΟΡΟΚΩΣΑ

Αρ. Υακ.: Α.Ι.Σ. 1 /2013 Α.Κ.Ι. 1/2011

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

Φσζική Γ Λσκείοσ. Κύμαηα. Θεηικής & Τετμολογικής Καηεύθσμζης. Διδάζκωμ: Καραδημηηρίοσ Μιτάλης. Πηγή: Study4exams.

άρθρο ΜΟΥΣΙΚΗ ΣΕ ΠΡΩΤΗ ΒΑΘΜΙΔΑ 1-2 Η συμβολή του εκπαιδευτικού υλικού στην εκπαιδευτική έρευνα και πράξη 7 ο & 8 ο ΤΕΥΧΟΣ ISSN Χ

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

Ermis Digital. Καςηγξοία: Web Campaigns Commercial Public Services. Τίςλξπ Σσμμεςξυήπ: Μέρα και ένω από ςξ ρπίςι

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Σηµειώσεις Εργαστηρίου)

ΓΔΝΙΚΟ ΔΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ

Ημεοίδα: Η Αγοξδαρξπξμία ρςα πλαίρια ςηπ μέαπ ΚΑΠ , Καβάλα, 5 Ιξσμίξσ Δο. Άμμα Σιδηοξπξύλξσ

6 ξ Παμαορακειακό Μαθηςικό Σσμέδοιξ Σε έμαμ κόρμξ πξσ αλλάζει: Τξ δικαίχμα ρςημ εκπαίδεσρη και η εκπαίδεσρη ρςα αμθοώπιμα δικαιώμαςα

Υλξπξίηρη εμόπ Σσρςήμαςξπ για ςημ Παοακξλξύθηρη ςηπ Πξιόςηςαπ ςξσ Εδάτξσπ

1o ΚΕΦΑΛΑΙΟ ΜΗΧΑΝΙΚΔΣ ΤΑΛΑΝΤΩΣΔΙΣ

Τ ο υ λ ι άς Λ. Θωμάς Μ ΑΘ Η Μ ΑΤΙ Κ Ο Σ ( DR. M A T H.)

Δ. Κοντογιώργη, δερματολόγος- αφροδισιολόγος

ΨΗΦΙΑΚΑ ΕΚΠΑΙΔΕΥΤΙΚΑ ΒΟΗΘΗΜΑΤΑ ΠΑΝΕΛΛΑΔΙΚΩΝ ΕΞΕΤΑΣΕΩΝ ΕΝΟΣΗΣΑ 1: ΕΙΑΓΩΓΗ ΤΓΡΑ Ε ΙΟΡΡΟΠΙΑ ΗΜΕΙΩΕΙ ΘΕΩΡΙΑ

ΣΕΛΙΚΗ ΕΠΑΝΑΛΗΨΗ ΜΗΧΑΝΙΚΗ ΑΠΡΙΛΙΟ Σςξ ρυήμα (α) ταίμεςαι έμα ελεύθεοξ ρςεοεό, ςξ ξπξίξ ρςοέτεςαι σπό ςημ επίδοαρη ςξσ ζεύγξσπ

ΜΕΘΟΔΟΛΟΓΙΑ ΑΣΚΗΣΕΩΝ 1ου ΚΕΦΑΛΑΙΟΥ. 1o ΚΔΦΑΛΑΙΟ ΜΗΧΑΝΙΚΔΣ ΤΑΛΑΝΤΩΣΔΙΣ

(MICROSOFT POWERPOINT 2013)

BIOHELLENIKA NEWSLETTER Τεύχος Ιανουάριος 2014 ΟΠΩΞΟΞΠΘΑΙΔΡ ΔΝΔΚΘΝΔΘΡ ΡΖ ΛΔΑΛΞΡΥΔΣΡΖ ΒΚΑΡΞΙΣΑΠΩΜ

ΠΡΟ: Υξιςηςέπ, Ακαδημαϊκό και Διξικηςικό Ποξρωπικό ΓΤΜΝΑΣΗΡΙΟ

Σπκπιεξσκαηηθέο ζεκεηώζεηο (ECDL) Δπεμεξγαζίαο Κεηκέλνπ Microsoft Word 2013

Τεχνολογίεσ προγραμματιςμοφ πελάτθ (client side) Ειςαγωγι ςτθν Javascript

Newsletter. Μέξ Διξικηςικό Ρσμβξύλιξ. για ςξ Δλλημικό Θμρςιςξύςξ Δνσπηοέςηρηπ Οελαςώμ

ΜΟΥΣΙΚΗ ΣΕ ΠΡΩΤΗ ΒΑΘΜΙΔΑ. Παρουσιάσεις εκπαιδευτικού υλικού και διδακτικής μεθοδολογίας 1-2

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 3: Constructors και destructors

Δμιαία ξογάμχρη σπξυοεχςικήπ μαθημαςικήπ εκπαίδεσρηπ

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

Διαδικαστικός Προγραμματισμός

Μαθηματικά Γενικής Παιδείας Γˊ Λυκείου. Κεφάλαιο 2 ο. Στατιστική

Δκπαιδεσςικό Τλικό για ςημ. «Βάρη ρυξλικώμ μξμάδχμ ΠΔ»

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

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

Αςύγφπξμξρ μξμξυαςικόρ κιμησήπαρ με οτκμωσή. λεισξτπγίαρ και οτκμωσή εκκίμηςηρ

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

Ermis Digital. Καςηγξοία: Digital/ Integrated Multiplatform Campaign 2. Τίςλξπ Σσμμεςξυήπ: Samsung Paralympics Campaign #Gnorisetous

Ἑλλημικά 2, 3, 55-56

άρθρο ΜΟΥΣΙΚΗ ΣΕ ΠΡΩΤΗ ΒΑΘΜΙΔΑ 1-2 Η συμβολή του εκπαιδευτικού υλικού στην εκπαιδευτική έρευνα και πράξη 7 ο & 8 ο ΤΕΥΧΟΣ ISSN Χ

Δομημένος Προγραμματισμός

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 2: Κλάσεις. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Εξίσωση - Φάση Αρµονικού Κύµατος 4ο Σετ Ασκήσεων - Χειµώνας Επιµέλεια: Μιχάλης Ε. Καραδηµητριου, MSc Φυσικός.

Δμρχμάςχρη ςχμ μειξμξςήςχμ ρςα εθμικά ρυξλεία: η εσοχπαψκή ιδέα

Transcript:

ΑΝΣΙΚΕΙΜΕΝΟΣΡΑΦΗ ΠΡΟΓΡΑΜΜΑΣΙΜΟ(Θ) Ενότητα 2: ΑΝΣΙΚΕΙΜΕΝΟΣΡΑΦΗ ΠΡΟΓΡΑΜΜΑΣΙΜΟ ΔΙΔΑΚΩΝ: ΠΑΡΙ ΜΑΣΟΡΟΚΩΣΑ ΧΟΛΗ ΣΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΣΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗ ΣΕ

Άδειεσ Χρήςησ Σο παρόν εκπαιδευτικό υλικό υπόκειται ςε άδειεσ χρήςησ Creative Commons. Για εκπαιδευτικό υλικό, όπωσ εικόνεσ, που υπόκειται ςε άλλου τφπου άδειασ χρήςησ, η άδεια χρήςησ αναφζρεται ρητώσ.

Χρηματοδότηςη Σο παρόν εκπαιδευτικό υλικό ζχει αναπτυχθεί ςτα πλαίςια του εκπαιδευτικοφ ζργου του διδάςκοντα. Σο ζργο «Ανοικτά Ακαδημαϊκά Μαθήματα ςτο ΣΕΙ Κεντρικήσ Μακεδονίασ» ζχει χρηματοδοτήςει μόνο τη αναδιαμόρφωςη του εκπαιδευτικοφ υλικοφ. Σο ζργο υλοποιείται ςτο πλαίςιο του Επιχειρηςιακοφ Προγράμματοσ «Εκπαίδευςη και Δια Βίου Μάθηςη» και ςυγχρηματοδοτείται από την Ευρωπαϊκή Ζνωςη (Ευρωπαϊκό Κοινωνικό Σαμείο) και από εθνικοφσ πόρουσ.

Ενότητα 2 ΑΝΣΙΚΕΙΜΕΝΟΣΡΑΦΗ ΠΡΟΓΡΑΜΜΑΣΙΜΟ ΔΙΔΑΚΩΝ: ΠΑΡΙ ΜΑΣΟΡΟΚΩΣΑ

Περιεχόμενα ενότητασ 1. Κλάσεις και αμτικείμεμα 2. Οπιζμόρ ανηικειμένων 3. Ιδιωηικά και δημόζια μέλη 4. Κλήζη ζςναπηήζεων-μελών 5. Απόδοζη ηιμών μέζω παπαμέηπων 6. Σςναπηήζειρ εγκαηάζηαζηρ/δόμηζηρ (constructors) 7. Σςναπηήζειρ αποζύνδεζηρ/αποδόμηζηρ (destructors) 8. Σςναπηήζειρ δόμηζηρ με ςπεπθόπηωζη (constructor overloading) 9. Σςναπηήζειρ-μέλη οπιζόμενερ έξω από ηην κλάζη 10. Σςναπηήζειρ δόμηζηρ εναλλακηικόρ οπιζμόρ 11. Ανηικείμενα ωρ οπίζμαηα ζςναπηήζεων 12. Επιζηποθή ανηικειμένων από ζςναπηήζειρ 13. Ένηαξη κλάζηρ ζηοςρ ηύποςρ δεδομένων

κοποί ενότητασ

Κλάρειπ και αμςικείμεμα #include <iostream.h> class Person private: char name[30]; int age; public: void readdata() cout << Enter name: ; cin >> name; cout << Enter age: ; cin >> age; void printdata() cout << The name of the person is << name << endl; cout << The age of the person is << age << endl; ; // τέλος κλάσης 7

Κλάρειπ και αμςικείμεμα void main() Person p1, p2; // δήλωση δύο αμτικειμέμωμ p1.readdata(); p1.printdata(); p2.readdata(); p2.printdata(); // κλήση συμάρτησης μέλους για ορισμό δεδομέμωμ // κλήση συμάρτησης μέλους για εμφάμιση δεδομέμωμ 8

Οοιρμόπ αμςικειμέμχμ Η ποόςαρη Person p1, p2; ξοίζει δύξ αμςικείμεμα (objects) ςηπ κλάρηπ Person. Θα ποέπει μα ςξμιρθεί όςι, όπχπ ρε μία δξμή, όςαμ ςημ ξοίζξσμε δε δημιξσογξύμε καμία μεςαβληςή δξμήπ, έςρι και με ςημ κλάρη, όςαμ ςημ ξοίζξσμε δε δημιξσογξύμε αμςικείμεμα, απλά πεοιγοάτξσμε πώπ θα είμαι ασςά όςαμ δημιξσογηθξύμ. Τα αμςικείμεμα δημιξσογξύμςαι όςαμ ξοίζξμςαι, ρύμτχμα με ςημ παοαπάμχ ποόςαρη. 9

Ιδιχςικά και δημόρια μέλη Έμα βαρικό υαοακςηοιρςικό ςξσ αμςικειμεμξρςοατξύπ ποξγοαμμαςιρμξύ είμαι η απόκοσφη δεδξμέμχμ (data hiding). Η έμδεινη private (ιδιωςικά) ρημαίμει όςι ςα δεδξμέμα είμαι κοσμμέμα μέρα ρε μία κλάρη, έςρι ώρςε μα μημ είμαι ποξρπελάριμα από ρσμαοςήρειπ πξσ είμαι ένχ από ςημ κλάρη. Αμςιθέςχπ, ςα δημόρια (public) δεδξμέμα, ποξρπελαύμξμςαι και ένχ από ςιπ κλάρειπ. Σσμήθωπ ςα δεδξμέμα (ή ςξσλάυιρςξμ ςα πεοιρρόςεοα εν ασςώμ) μέρα ρε μία κλάρη είμαι ιδιωςικά και ξι ρσμαοςήρειπ είμαι δημόριεπ. 10

Κλήρη ρσμαοςήρεχμ-μελώμ Για μα καλέρξσμε μία ρσμάοςηρη-μέλξπ μίαπ κλάρηπ ςη ρσμδέξσμε μέρχ ςξσ ςελερςή ςελεία με κάπξιξ αμςικείμεμξ: Αμςικείμεμξ.ρσμάοςηρη-μέλξπ Η ρύμςανη είμαι παοόμξια με ςξμ ςοόπξ πξσ αματεοόμαρςε ρςα μέλη μίαπ δξμήπ, με ςιπ παοεμθέρειπ μα σπξδηλώμξσμ όμχπ όςι αματεοόμαρςε ρε ρσμάοςηρη-μέλξπ και όυι ρε ρςξιυείξ δεδξμέμχμ. Η ποώςη κλήρη ρςη readdata() γίμεςαι χπ ενήπ: p1.readdata(); όπξσ καλείςαι η ρσμάοςηρη-μέλξπ readdata() ςξσ αμςικειμέμξσ p1. Ακξλξύθχπ, εκςελείςαι ξ κώδικαπ ςηπ ρσμάοςηρηπ, όπξσ δίμξμςαι από ςξμ υοήρςη ςιμέπ για ςξ όμξμα και ςημ ηλικία ςξσ αςόμξσ. Οι ςιμέπ απξδίδξμςαι ρςα δεδξμέμα ςξσ αμςικειμέμξσ name και age, αμςίρςξιυα. Η δεύςεοη κλήρη p2.readdata(); καλεί p2. 11

Απόδξρη ςιμώμ μέρχ παοαμέςοχμ class Person private: char name[30]; int age; public: void setdata(char name1[], int age1) strcpy(name, name1); age = age1; void printdata() cout << The name of the person is << name << endl; cout << The age of the person is << age << endl; ; // τέλος κλάσης Εθόζον ηα ιδιωηικά μέλη δηλώνονηαι ππιν ηα δημόζια, η λέξη private πεπιηηεύει. 12

Απόδξρη ςιμώμ μέρχ παοαμέςοχμ void main() Person p; p.setdata( PAPADOPOULOS, 25); p.printdata(); Σςξ ποόγοαμμα ασςό ξοίζεςαι έμα αμςικείμεμξ p. Ακξλξύθχπ, με ςημ ποόςαρη p.setdata( PAPADOPOULOS, 25); καλείςαι η ρσμάοςηρη-μέλξπ setdata(), ρςημ ξπξία μεςαβιβάζξμςαι ξι ςιμέπ PAPADOPOULOS και 25 ρςιπ παοαμέςοξσπ name1 και age1, αμςίρςξιυα. Τέλξπ, όςαμ εκςελείςαι ξ κώδικαπ ςηπ ρσμάοςηρηπ, ξι ςιμέπ ασςώμ ςχμ παοαμέςοχμ απξδίδξμςαι ρςα δεδξμέμα ςξσ αμςικειμέμξσ. 13

Σσμαοςήρειπ εγκαςάρςαρηπ/δόμηρηπ (constructors) Μεοικέπ τξοέπ είμαι βξλικό για έμα αμςικείμεμξ μα λαμβάμει άμερα αουικέπ ςιμέπ, ςημ ποώςη τξοά πξσ δημιξσογείςαι, υχοίπ μα απαιςείςαι μα καλέρξσμε μία νευχοιρςή ρσμάοςηρη-μέλξπ. Η ασςόμαςη απόδξρη αουικώμ ςιμώμ ποαγμαςξπξιείςαι με υοήρη μίαπ ειδικήπ ρσμάοςηρηπ-μέλξσπ πξσ ξμξμάζεςαι ρσμάοςηρη εγκαςάρςαρηπ ή δόμηρηπ ή δξμηςήπ (constructor). Η ρσμάοςηρη δόμηρηπ είμαι μία ρσμάοςηρη-μέλξπ ςηπ κλάρηπ, η ξπξία σπξυοεχςικά είμαι είμαι ρσμξμόμαςη με thn κλάρη. Καλείςαι ασςόμαςα όςαμ δηλώμεςαι έμα αμςικείμεμξ ςηπ κλάρηπ. Οι δξμηςέπ υοηριμξπξιξύμςαι για ςημ αουικξπξίηρη αμςικειμέμχμ. Έμαπ δξμηςήπ δεμ επιρςοέτει ςιμή ξύςε δηλώμεςαι χπ void. 14

class Account private: float balance; public: Account() balance = 0; Σσμαοςήρειπ εγκαςάρςαρηπ/δόμηρηπ (constructors) constructor void withdraw(float money) if (money <= balance) balance = balance money; else cout << Τξ πξρό αμάληφηπ σπεοβαίμει ςξ ςοέυξμ! << endl; // συμέχεια της κλάσης στημ επόμεμη διαφάμεια 15

Σσμαοςήρειπ εγκαςάρςαρηπ/δόμηρηπ (constructors) void deposit(float money) balance += money; float getbalance() return balance; ; // τέλος της κλάσης main() Account ac; ac.deposit(100.0); cout << Τοέυξμ πξρό λξγαοιαρμξύ: << ac.getbalance() << endl; ac.withdraw(70.0) ; cout << Τοέυξμ πξρό λξγαοιαρμξύ: << ac.getbalance() << endl; 16

Σσμαοςήρειπ εγκαςάρςαρηπ/δόμηρηπ (constructors) Σςξ ποόγοαμμα ξοίζεςαι μία κλάρη Account, με έμα μέλξπ δεδξμέμχμ balance, πξσ αματέοεςαι ρςξ ςοέυξμ πξρό εμόπ λξγαοιαρμξύ. Οοίζξμςαι επίρηπ δύξ ρσμαοςήρειπ-μέλη για ςημ αμάληφη και ςημ καςάθερη υοημάςχμ ρςξ λξγαοιαρμό και μία ρσμάοςηρη-μέλξπ πξσ επιρςοέτει, καςά ςημ κλήρη ςηπ, ςξ ςοέυξμ πξρό λξγαοιαρμξύ. Τξ ςοέυξμ πξρό λξγαοιαρμξύ αουικξπξιείςαι ρςξ 0. Ασςό επιςσγυάμεςαι καςά ςη δημιξσογία εμόπ αμςικειμέμξσ, με ςη ρσμάοςηρη εγκαςάρςαρηπ Account(), η ξπξία εκςελείςαι ασςόμαςα. 17

Σσμαοςήρειπ απξρύμδερηπ/απξδόμηρηπ (destructors) class Account private: float balance; public: Account() balance = 0; ~Account() ;.. // συμάρτηση αποσύμδεσης cout << The account has been deleted << endl; 18

Σσμαοςήρειπ απξρύμδερηπ/απξδόμηρηπ (destructors) Μία ρσμάοςηρη δόμηρηπ καλείςαι ασςόμαςα όςαμ δημιξσογείςαι έμα αμςικείμεμξ. Μπξοξύμε αμςίρςξιυα μα ξοίρξσμε μία ρσμάοςηρη απξρύμδερηπ ή απξδόμηρηπ ή απξδξμηςή (destructor), η ξπξία θα καλείςαι ασςόμαςα όςαμ έμα αμςικείμεμξ καςαρςοέτεςαι. Η ρσμάοςηρη απξδόμηρηπ έυει ςξ ίδιξ όμξμα με ςημ κλάρη, έυξμςαπ μποξρςά μία πεοιρπχμέμη ~. Η πιξ ρσμηθιρμέμη υοήρη ςχμ ρσμαοςήρεχμ απξδόμηρηπ είμαι η απξδέρμεσρη ςηπ μμήμηπ πξσ είυε δερμεσςεί για έμα αμςικείμεμξ από ςη ρσμάοςηρη δόμηρηπ. 19

Σσμαοςήρειπ δόμηρηπ με σπεοτόοςχρη (constructor overloading) class Account private: float balance; public: Account() // συμάρτηση δόμησης χωρίς ορίσματα balance = 0; Account(float balance1) // συμάρτηση δόμησης με όρισμα balance = balance1; void withdraw(float money) if (money <= balance) balance = balance money; else cout << Τξ πξρό αμάληφηπ σπεοβαίμει ςξ ςοέυξμ! << endl; 20

; void deposit(float money) balance += money; float getbalance() main() Σσμαοςήρειπ δόμηρηπ με σπεοτόοςχρη (constructor overloading) return balance; Account ac1, ac2(50.0), ac3(100.0); cout << Τοέυξμ πξρό λξγαοιαρμξύ ac1: << ac1.getbalance() << endl; cout << Τοέυξμ πξρό λξγαοιαρμξύ ac2: << ac2.getbalance() << endl; cout << Τοέυξμ πξρό λξγαοιαρμξύ ac3: << ac3.getbalance() << endl; 21

Σσμαοςήρειπ δόμηρηπ με σπεοτόοςχρη (constructor overloading) Δύξ ρσμαοςήρειπ δόμηρηπ, μία με ξοίρμαςα και μία υχοίπ όοιρμα. Καςά ςη δήλχρη Account ac1, ac2(50.0), ac3(100.0); δημιξσογξύμςαι ςοία αμςικείμεμα. Σςξ ποώςξ γίμεςαι υοήρη ςηπ ρσμάοςηρηπ δόμηρηπ υχοίπ όοιρμα και πξσ ξσριαρςικά δεμ κάμει ςίπξςε. Σςα δύξ επόμεμα αμςικείμεμα γίμεςαι υοήρη ςηπ ρσμάοςηρηπ δόμηρηπ με ςξ όοιρμα balance1, ρςξ ξπξίξ μεςαβιβάζξμςαι ξι ςιμέπ 50.0 και 100.0, αμςίρςξιυα, και απξδίδξμςαι ρςα ρςξιυεία δεδξμέμχμ ςχμ δύξ αμςικειμέμχμ. Οι δύξ ρσμαοςήρειπ έυξσμ ςξ ίδιξ όμξμα ςξ όμξμα ςηπ κλάρηπ και θεχοξύμε όςι η ρσμάοςηρη δόμηρηπ έυει σπξρςεί σπεοτόοςωρη (overloading). Τξ πξια ρσμάοςηρη δόμηρηπ εκςελείςαι όςαμ δημιξσογείςαι έμα αμςικείμεμξ, εναοςάςαι από ςξμ αοιθμό ςχμ ξοιρμάςχμ πξσ υοηριμξπξιξύμςαι ρςξμ ξοιρμό ςξσ αμςικειμέμξσ. 22

Σσμαοςήρειπ-μέλη ξοιζόμεμεπ ένχ από ςημ κλάρη Μπξοξύμε μα διαςηοήρξσμε μέρα ρςημ κλάρη ςιπ δηλώρειπ όλχμ ςχμ ρσμαοςήρεχμ μελώμ, αλλά μα ςιπ ξοίρξσμε ένχ από ςημ κλάρη. Ασςό θα ήςαμ ίρχπ ποξςιμόςεοξ ρε μία εταομξγή πξσ ξ αοιθμόπ ςχμ ρσμαοςήρεχμ-μελώμ είμαι μεγάλξπ, γιαςί θα μαπ βξηθξύρε μα ελέγυξσμε καλύςεοα ςημ κλάρη. Σε μια ςέςξια όμχπ πεοίπςχρη, θα ποέπει ρςξμ ξοιρμό ςηπ ρσμάοςηρηπ μα αματέοξσμε και ςημ κλάρη ρςημ ξπξία αμήκει. 23

Σσμαοςήρειπ-μέλη ξοιζόμεμεπ ένχ από ςημ κλάρη class Account private: float balance; public: Account(); Account(float balance1); void withdraw(float money); void deposit(float money); float getbalance(); Account addbalance(account ac); ; 2 ζσναρηήζεις δόμηζης 24

Σσμαοςήρειπ-μέλη ξοιζόμεμεπ ένχ από ςημ κλάρη Account::Account() balance = 0; Account::Account(float balance1) // συμάρτηση δόμησης με όρισμα balance = balance1; void Account::withdraw(float money) if (money <= balance) balance = balance money; else cout << Τξ πξρό αμάληφηπ σπεοβαίμει ςξ ςοέυξμ! << endl; 25

Σσμαοςήρειπ-μέλη ξοιζόμεμεπ ένχ από ςημ κλάρη void Account::deposit(float money) balance += money; float Account::getBalance() return balance; Account Account::addBalance(Account ac) Account temp; temp.balance = balance + ac.balance; return temp; 26

Σσμαοςήρειπ-μέλη ξοιζόμεμεπ ένχ από ςημ κλάρη main() Account ac1(100.0), ac2(70.0), ac3; ac3 = ac1.addbalance(ac2); cout << Τοέυξμ πξρό λξγαοιαρμξύ ac1: << ac1.getbalance() << endl; cout << Τοέυξμ πξρό λξγαοιαρμξύ ac2: << ac2.getbalance() << endl; cout << Σσμξλικό πξρό λξγαοιαρμώμ: << ac3.getbalance() << endl; Σε ασςόμ ςξμ ξοιρμό μίαπ ρσμάοςηρηπ παοεμβάλλεςαι ςξ όμξμα ςηπ κλάρηπ και ςξ ρύμβξλξ ::, πξσ ξμξμάζεςαι ςελερςήπ διάκοιρηπ ή αμαγχγήπ εμβέλειαπ (scope resolution operator), ξ ξπξίξπ παοέυει έμαμ ςοόπξ για μα καθξοίζξσμε ρε πξια κλάρη αμήκει μία ρσμάοςηρη. 27

Σσμαοςήρειπ δόμηρηπ εμαλλακςικόπ ξοιρμόπ Εμαλλακςικόπ ςοόπξπ ξοιρμξύ ςηπ ρσμάοςηρηπ δόμηρηπ: Account :: Account(float balance1) : balance(balance1) /* εσκεμμέμα κεμό σώμα της συμάρτησης δόμησης */ Δηλαδή ξι ςιμέπ με ςιπ ξπξίεπ θα αουικξπξιηθξύμ ξι μεςαβληςέπ-μέλη μπαίμξσμ ρε παοεμθέρειπ μεςά ςα ξμόμαςα ςχμ μεςαβληςώμ μελώμ, εμώ αοιρςεοά ασςώμ ςίθεςαι ξ ποξρδιξοιρςήπ : Εάμ ρςημ κλάρη σπάουξσμ δύξ ή πεοιρρόςεοεπ μεςαβληςέπ-μέλη (π.υ. float balance, float interest), ξι ξπξίεπ θα λάβξσμ ςιπ αουικέπ ςιμέπ balance1 και interest1, αμςίρςξιυα, ςόςε ξ εμαλλακςικόπ ςοόπξπ δόμηρηπ θα έδιμε: Account :: Account(float balance1) : balance(balance1), (interest1) /* εσκεμμέμα κεμό σώμα της συμάρτησης δόμησης */ 28

Σσμαοςήρειπ δόμηρηπ εμαλλακςικόπ ξοιρμόπ To ρώμα ςηπ ρσμάοςηρηπ δόμηρηπ μπξοεί μα πεοιέυει κώδικα π.υ. έλεγυξ καςά πόρξμ ςξ επιςόκιξ είμαι θεςικό: Account :: Account(float balance1) : balance(balance1), (interest1) if (interest < 0 ) cout << Error!! Negative interest value\n\n ; exit(1); 29

Σσμξλικό παοάδειγμα κλάρηπ με έμταρη ρςξσπ δξμηςέπ απξδξμηςέπ: Walter Savitch, Absolute C++, 5 th ed. pp. 286-291 30

Τα δεδξμέμα ςηπ κλάρηπ BankAccount είμαι ςξ σπόλξιπξ ςξσ λξγαοιαρμξύ και ςξ επιςόκιξ. Τξ σπόλξιπξ απεικξμίζεςαι με δύξ ακέοαιεπ μεςαβληςέπ: ςξ ακέοαιξ μέοξπ ($) και ςξ κλαρμαςικό μέοξπ ( ). Η ρσγκεκοιμέμη απεικόμιρη απξρκξπεί ρςξ μα δείνει όςι η ερχςεοική αμαπαοάρςαρη ςηπ έμμξιαπ ςξσ κάθε δεδξμέμξσ δεμ είμαι αμαγκαίξ μα ςασςίζεςαι με μία μόμξ μεςαβληςή. Επιπλέξμ, εάμ ςξ σπόλξιπξ πεοιγοατόςαμ από έμαμ αοιθμό κιμηςήπ σπξδιαρςξλήπ θα απξςελξύρε μία ποξρέγγιρη ςηπ ποαγμαςικήπ ςιμήπ και μάλιρςα με πεοιρρόςεοα ςχμ 2 δεκαδικώμ φητίχμ, γεγξμόπ πξσ θα εουόςαμ ρε αμςίθερη με ςημ έμμξια ςξσ cent. Η κλάρη έυει ςέρρεοιπ ιδιχςικέπ ρσμαοςήρειπ-μέλη: dollarspart(), centspart(), round() και fraction(). Έυξσμ καςαρςεί ιδιχςικέπ γιαςί ξ ρκξπόπ ςηπ υοήρηπ ςξσπ είμαι ξ ξοιρμόπ άλλχμ ρσμαοςήρεχμ-μελώμ. 31

W. Savitch, Absolute C++, 5 th Ed. Σηο ζσγκεκριμένο παράδειγμα οι ιδιωηικές μεηαβληηές-μέλη και ζσναρηήζεις-μέλη δηλώνονηαι ζηο ηέλος ηης κλάζης. 32

W. Savitch, Absolute C++, 5 th Ed. 33

W. Savitch, Absolute C++, 5 th Ed. 34

W. Savitch, Absolute C++, 5 th Ed. 35

W. Savitch, Absolute C++, 5 th Ed. 36

W. Savitch, Absolute C++, 5 th Ed. 37

W. Savitch, Absolute C++, 5 th Ed. 38

W. Savitch, Absolute C++, 5 th Ed. 39

W. Savitch, Absolute C++, 5 th Ed. 40

W. Savitch, Absolute C++, 5 th Ed. 41

Αμςικείμεμα χπ ξοίρμαςα ρσμαοςήρεχμ Σςξ ποόγοαμμα πξσ ακξλξσθεί ξοίζεςαι μία ρσμάοςηρη-μέλξπ addbalance(), η ξπξία έυει χπ ρςόυξ μα ποξρθέρει ςα πξρά δύξ διατξοεςικώμ λξγαοιαρμώμ. #include <iostream.h> class Account private: float balance; public: Account() // συμάρτηση δόμησης ορίσματα balance = 0; Account(float balance1) // συμάρτηση δόμησης με όρισμα balance = balance1; 42

; void withdraw(float money) if (money <= balance) balance = balance money; else cout << Τξ πξρό αμάληφηπ σπεοβαίμει ςξ ςοέυξμ! << endl; void deposit(float money) balance += money; float getbalance() return balance; void addbalance(account x, Account y) balance = x.balance + y.balance; 43

main() Account ac1(100.0), ac2(70.0), ac3; ac3.addbalance(ac1, ac2); cout << Τοέυξμ πξρό λξγαοιαρμξύ ac1: <<ac1.getbalance() << endl; cout << Τοέυξμ πξρό λξγαοιαρμξύ ac2: << ac2.getbalance() << endl; cout << Σσμξλικό πξρό λξγαοιαρμώμ: << ac3.getbalance() << endl; Η κλήρη ρσμάοςηρηπ μέρα ρςη main() ac3.addbalance(ac1, ac2); μεςαβιβάζει ςα αμςικείμεμα ac1 και ac2 ρςιπ παοαμέςοξσπ ςηπ ρσμάοςηρηπ x και y αμςίρςξιυα. Σςξμ κώδικα ςηπ ρσμάοςηρηπ γίμεςαι αματξοά ρςα δεδξμέμα ςχμ αμςικειμέμχμ x.balance και y.balance. Ασςό είμαι ετικςό γιαςί, αμ και ςα δεδξμέμα είμαι ιδιχςικά, εμςξύςξιπ είμαι ποξρπελάριμα καθώπ η ρσμάοςηρη είμαι μέλξπ ςηπ κλάρηπ. Τα δεδξμέμα ποξρςίθεμςαι και ςξ απξςέλερμα απξδίδεςαι ρςξ δεδξμέμξ ςξσ αμςικειμέμξσ ςξ ξπξίξ καλεί ςη ρσμάοςηρη-μέλξπ, ςξ ξπξίξ είμαι ςξ ac3. 44

Επιρςοξτή αμςικειμέμχμ από ρσμαοςήρειπ Σςξ ποξηγξύμεμξ παοάδειγμα είδαμε πώπ αμςικείμεμα μεςαβιβάζξμςαι χπ ξοίρμαςα ρε ρσμαοςήρειπ. Σςξ παοάδειγμα πξσ ακξλξσθεί θα δξύμε μία ρσμάοςηρη πξσ επιρςοέτει έμα αμςικείμεμξ. Account addbalance(account ac) Account temp; temp.balance = balance + ac.balance; return temp; main() Account ac1(100.0), ac2(70.0), ac3; ac3 = ac1.addbalance(ac2); cout << Τοέυξμ πξρό λξγαοιαρμξύ ac1: << ac1.getbalance() << endl; cout << Τοέυξμ πξρό λξγαοιαρμξύ ac2: << ac2.getbalance() << endl; cout << Σσμξλικό πξρό λξγαοιαρμώμ: << ac3.getbalance() << endl; 45

Επιρςοξτή αμςικειμέμχμ από ρσμαοςήρειπ Τξ παοαπάμχ παοάδειγμα πεςσυαίμει ό,ςι ακοιβώπ και ςξ ποξηγξύμεμξ, δηλαδή ποξρθέςει δύξ λξγαοιαρμξύπ και ςξ ρσμξλικό πξρό απξδίδεςαι ρε έμα ςοίςξ αμςικείμεμξ, μόμξ πξσ υοηριμξπξιεί μία διατξοεςική ποξρέγγιρη. Σςη ρσμάοςηρη addbalance() μεςαβιβάζεςαι μόμξ ςξ έμα αμςικείμεμξ χπ όοιρμα, π.υ ςξ ac2 μεςαβιβάζεςαι ρςημ παοάμεςοξ ac. 46

Έμςανη κλάρηπ ρςξσπ ςύπξσπ δεδξμέμχμ Μία κλάρη είμαι έμαπ πλήοηπ ςύπξπ δεδξμέμχμ, όπχπ π.υ. ξι ςύπξι int και double, με διεσοσμέμεπ βέβαια λειςξσογίεπ. Mπξοξύμε μα έυξσμε: Μεςαβληςέπ ςύπξσ κλάρηπ (αμςικείμεμα) Παοαμέςοξσπ ρσμαοςήρεωμ ςύπξσ κλάρηπ Επιρςοετόμεμεπ ςιμέπ ρσμαοςήρεωμ ςύπξσ κλάρηπ 47

Σέλος Ενότητας