
Πώς μπορώ να ελέγξω τον τύπο της αξίας χρόνου εκτέλεσης;


Θα ήθελα να μάθετε όπου είμαι δημιουργώντας διπλασιάζεται.

 
Πώς να ελέγξετε έναν τύπο αξία;
===============================



Αν χρησιμοποιείτε τάξεις Objective-C, τότε η `[myObject isKindOfClass: [InterestingClass class]]`δοκιμή είναι διαθέσιμη. Αν χρησιμοποιείτε πρωτόγονων τύπων (η οποία ερώτησή σας, αναφέροντας το «διπλό» τύπου, προτείνει), τότε δεν μπορείτε. Ωστόσο, αν κάνετε κάποια πολύ funky πράγματα, ο compiler μπορεί να σας πει πότε πρωτόγονων τύπων ή δεν ταιριάζουν, και όταν δεν θα εκτελέσει έμμεση προώθηση στο επιθυμητό τύπο.


Θα ήταν χρήσιμο να γνωρίζουμε λίγο περισσότερα για το ποιο είναι το συγκεκριμένο πρόβλημα είναι ότι προσπαθείτε να λύσετε, διότι μπορεί να είναι ότι η λύση δεν περιλαμβάνει την ανίχνευση της δημιουργίας διπλασιάζεται σε όλα :-).

 

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

 