Εμφάνιση 1-7 από 7
  1. #1
    Εγγραφή
    14-05-2017
    Μηνύματα
    25
    Downloads
    1
    Uploads
    0
    ISP
    HOL
    Γράφω ένα πρόγραμμα σε C++ και έχω καποιές απορίες πάνω στο θέμα·

    Για να σας δώσω να καταλάβετε ηθέλα να ρωτήσω πώς γίνονται τα παρακάτω

    1) Πώς μπορώ να φτιάξω μια μεταβλητή με όνομα το περιεχόμενο μιας άλλης μεταβλιτής

    Δηλαδή να φτιάξω μια μεταβλητή τύπου string και να της δώσω το όνομα -> name και να τραβίζω ένα όνομα από το πληκτρολόγιο
    και με το περιεχόμενο της μεταβλητής name να δήλωσω ασπούμε μια ακέρεα μεταβλητή με το όνομα που εχεί μέσα η string

    2) Επίσης πώς μπορώ να κάνω μια συνάρτηση που θα πέρνει το ονομά της από το περιεχόμενο μιας μεταβλητής κειμένου πάλι ή δεν ξέρω τή άλλο και θα δημιουργεί μια συνάρτηση με όνομα το περιεχόμενο της μεταβλητής (δηλαδή μετά από το τράβιγμα από το πληκτρολόγιο να δηλώσω μια int πχ με όνομα του περιεχομένου της μεταβλητής string name; )

    3) Το ιδίο και με τις κλάσεις·

    Φαντάζομαι ότι κάτι τέτοιο γίνετε διότι το κάνει η python καθώς είναι γραμμένη σε c· Αλλά δεν ξέρω πώς το κάνει αυτό·

    Σας ευχαριστώ εκτοπροτέρων και με συνχωρείτε αν η ορθογραφία μου είναι λίγο μαντάρα σας εύχομαι καλά Χριστούγγενα με υγεία και οπότε μπορείτε απαντήστε μου ευχαριστώ·
    Τελευταία επεξεργασία από το μέλος djtkyri : 25-12-18 στις 22:54.

  2. #2
    Εγγραφή
    13-11-2011
    Περιοχή
    Χολαργός
    Ηλικία
    37
    Μηνύματα
    1.446
    Downloads
    1
    Uploads
    0
    Τύπος
    VDSL2
    Ταχύτητα
    24000 / 4500
    ISP
    Wind
    DSLAM
    Wind - ΧΟΛΑΡΓΟΣ
    Path Level
    Interleaved
    Δεν μπορώ να καταλάβω ακριβώς τι ζητάς αλλά για το (1) μπορείς να δεις το map που σου επιτρέπει να έχεις στοιχεία τύπου key-value. Οπότε για ένα key (πχ το όνομα της μεταβλητής) να κρατάς ένα value (πχ τα δεδομένα της μεταβλητής).

    Αυτά που περιγράφεις (όπως το καταλαβαίνω) πάνε πιο κοντά σε parser και compiler (ή interpreter) παρά σε "απλό προγραμματισμό", όπως με το map που είπα για τις μεταβλητές. Αν θέλεις να ορίσεις και classes και functions τότε θα πρέπει να ορίσεις ολόκληρο το συντακτικό και να κάνεις λεξικογραφική, συντακτική και σημασιολογική ανάλυση της εισόδου και ένα σκασμό άλλες δουλειές για να βγάλεις αποτέλεσμα. Για αυτά υπάρχουν ολόκληρα βιβλία αφιερωμένα σε κάθε ένα από αυτά τα θέματα χωριστά. Οπότε το να ζητήσεις βοήθεια για όλο αυτό καταλαβαίνεις ότι είναι ένα τεράστιο θέμα.

    Μπορείς να δεις εδώ και εδώ παραδείγματα που χρησιμοποιούν έτοιμες βιβλιοθήκες για να κάνουν αυτές τις δουλειές. Προφανώς δεν απευθύνεται σε αρχάριους οπότε ίσως δεν είναι και πολύ εύκολο να το ακολουθήσεις

  3. #3
    Εγγραφή
    14-05-2017
    Μηνύματα
    25
    Downloads
    1
    Uploads
    0
    ISP
    HOL
    Σε ευχαριστώ πολύ· Για να το λές ότι είναι δύσκολο κάτι θα ξέρεις απλά επιδή είχα αρχίσει να τα τρέλενομαι καθώς το έψαχα παντού και δεν βρήκα αυτό που ήθελα·

    Ουσιαστικά εγώ κάνω ενάν Compiler ( ByteCode) σε C++ και εχώ κάνει ίδη να μην δίνεις τύπο μεταβλητής το θέμα ήταν με το όνομα τουλάχιστον να κάνω·

    Σε ευχαριστώ και πάλι και σου εύχομαι καλά Χριστούγγενα και κυρίως με υγεία·
    Τελευταία επεξεργασία από το μέλος djtkyri : 26-12-18 στις 18:10.

  4. #4
    Εγγραφή
    13-11-2011
    Περιοχή
    Χολαργός
    Ηλικία
    37
    Μηνύματα
    1.446
    Downloads
    1
    Uploads
    0
    Τύπος
    VDSL2
    Ταχύτητα
    24000 / 4500
    ISP
    Wind
    DSLAM
    Wind - ΧΟΛΑΡΓΟΣ
    Path Level
    Interleaved
    Αφού θέλεις να φτιάξεις compiler τότε πάρε ένα βιβλίο που εξηγεί τους compiler και πώς να φτιάξεις κάποιον. Μην προσπαθείς να τα βρεις όλα μόνος σου γιατί είναι πολύ μεγάλο θέμα και δεν χρειάζεται να επανεφεύρεις τα πάντα!

  5. #5
    Εγγραφή
    14-05-2017
    Μηνύματα
    25
    Downloads
    1
    Uploads
    0
    ISP
    HOL
    Αν και αυτό προσπάθησα να κάνω και δεν τα κατάφερα στην αρχή ήθελα να κάνω τον Compiler σε Assembly όσο και τρελό να σου φαίνετε έχεις πιο πολλές δυνατότητες με την assembly αλλά αφού δεν τα κατάφερα συνιδιτοποιήσα ότι ναι δεν χρειάζετε να τα εφεύρις όλα μόνος σου και έτσι το δοκίμασα σε C++ με τις έτιμες βιβλιοθήκες· Όσο ότι υπάρχει βιβλίο που να εξηγεί πώς να κάνεις έναν Compiler σε C++ πρώτη φορά το ακούω· Θα μπορούσες να μου συστήσεις ένα στα Ελληνικά· Σε ευχαριστώ πολύ εκτοπροτέρων με έχεις βοηθίσει εχώ καταλάβει ίδη το 'map' ευχαριστώ·

    Α και να ξεκαθαρίσω κάτι δεν τα έχω καταλάβει όλα καθώς είμε μόλις 17 χρονών και τώρα μπένω· Το λέω γιατί φαντάζομαι θα σου φανεί τρελό αυτό με την assembly απλά πίστεψα ότι... Καλό βράδι σου εύχομαι και σε ευχαριστώ·
    Τελευταία επεξεργασία από το μέλος djtkyri : 26-12-18 στις 20:14.

  6. #6
    Εγγραφή
    13-11-2011
    Περιοχή
    Χολαργός
    Ηλικία
    37
    Μηνύματα
    1.446
    Downloads
    1
    Uploads
    0
    Τύπος
    VDSL2
    Ταχύτητα
    24000 / 4500
    ISP
    Wind
    DSLAM
    Wind - ΧΟΛΑΡΓΟΣ
    Path Level
    Interleaved
    Εγώ έχω το ΜΕΤΑΓΛΩΤΤΙΣΤΕΣ ΑΡΧΕΣ, ΤΕΧΝΙΚΕΣ ΚΑΙ ΕΡΓΑΛΕΙΑ. Γνωστό και ως "DragonBook".

  7. #7
    Εγγραφή
    14-05-2017
    Μηνύματα
    25
    Downloads
    1
    Uploads
    0
    ISP
    HOL
    MitsakosGR Σε ευχαριστω πολυ και με συνχωρεις αν σε κουρασα λγιο• Να εχεις ενα καλο βραδι σου ευχομαι.

Tags για αυτό το Θέμα

Bookmarks

Bookmarks

Δικαιώματα - Επιλογές

  • Δεν μπορείτε να δημοσιεύσετε νέα θέματα
  • Δεν μπορείτε να δημοσιεύσετε νέα μηνύματα
  • Δεν μπορείτε να αναρτήσετε συνημμένα
  • Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας
  •  
  • Τα BB code είναι σε λειτουργία
  • Τα Smilies είναι σε λειτουργία
  • Το [IMG] είναι σε λειτουργία
  • Το [VIDEO] είναι σε λειτουργία
  • Το HTML είναι εκτός λειτουργίας