apot Δημοσ. 31 Δεκεμβρίου 2009 Δημοσ. 31 Δεκεμβρίου 2009 Γειά χαρά και Χρόνια Πολλά!!! Σε C++ έχω μία συνάρτηση η οποία καλείτε και από άλλες κλάσεις και συναρτήσεις. Αυτή η αρχική συνάρτηση όταν καλείτε θελώ να εκτελείτε ακριβώς όπως έχει οριστεί αρχικά αλλάζοντας ΜΟΝΟ τα ονόματα κάποιον μεταβλητών (π.χ όπου η συνάρτηση έχει την μεταβλητή Χ βάλε Υ). Δηλαδή μια συνάρτηση Β να καλεί την συνάρτηση Α αλλά όπου η συνάρτηση Α έχει Χ να βάζει Υ. Υπάρχει κάτι τέτοιο ? Ευχαριστώ
bxenos Δημοσ. 31 Δεκεμβρίου 2009 Δημοσ. 31 Δεκεμβρίου 2009 Δηλαδή μια συνάρτηση Β να καλεί την συνάρτηση Α αλλά όπου η συνάρτηση Α έχει Χ να βάζει Υ. Υπάρχει κάτι τέτοιο ? Ευχαριστώ δεν εξηγεις ικανοποιητικά.... Αν δεν κάνω λάθος τώρα ξεκινάς και δεν έχεις καταλάβει τα βασικά των συναρτήσεων/παραμέτρων. μπορεί να θέλεις αυτό: > void A(int& v){ v = 3; } void B(void){ int x,y; A(x); A(y); } αν θέλεις απλά να κάνεις την ίδια δουλειά σε άλλες μεταβλλητές ή μπορεί να θέλεις template (αν θέλεις να αλλάζει και ο κώδικας, ανάλογα με τις "συνθήκες"). Στη C++ πάντως αντι να περνάμε "μεταβλλητές" σαν παραμέτρους, προτιμάμε να περνάμε αυτοτελή αντικείμενα που να "χειρίζονται" μόνα τους τον εαυτό τους (να ξέρουν δηλαδή τι να πειράξουν μεσα τους) και όχι μια άσχετη συνάρτηση Α να πειράζει στοιχεία ενος αντικειμένου Β. Χρόνια πολλά
Bill_cs Δημοσ. 31 Δεκεμβρίου 2009 Δημοσ. 31 Δεκεμβρίου 2009 Ναι ισως με αντικειμενα θες να δουλεψεις και μπερδευτηκες.. εκτος αν λες οτι η συναρτηση ειναι μεθοδος καποιας κλασσης?? αλλιως θα κανεις template ή static μεθοδο..
aghahowa Δημοσ. 31 Δεκεμβρίου 2009 Δημοσ. 31 Δεκεμβρίου 2009 υπαρχει το find and replace στους περισσότερους compilers αλλα και στο edit++ και κατι αλλο main(){ do_sth(a,; } void do_sth(int x,int y){ x=y; } το παραπάνω μπορεις να το κανεις. δλδ δεν χρειαζεται να εχεις ομοια ονομα στην κληση και στην υλοποιηση. ελπιζω ενα απο τα δυο να απανταει στην ερώτησή σου
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.