Σπίτι Προσωπικά Οικονομικά Κτίριο σταθερές πίνακες σε C ++ - ανδρείκελα

Κτίριο σταθερές πίνακες σε C ++ - ανδρείκελα

Βίντεο: Data Analysis in R by Dustin Tran 2024

Βίντεο: Data Analysis in R by Dustin Tran 2024
Anonim

Αν έχετε έναν πίνακα και δεν θέλετε να αλλάξει το περιεχόμενό του, μπορείτε να το κάνετε σταθερό. Οι ακόλουθες γραμμές κώδικα, που βρίσκονται στο παράδειγμα Array05, καταδεικνύουν αυτήν την προσέγγιση:

const int Permanent [5] = {1, 2, 3, 4, 5}; cout << μόνιμη [1] << endl;

Αυτός ο πίνακας λειτουργεί όπως οποιοσδήποτε άλλος πίνακας, εκτός από το ότι δεν μπορείτε να αλλάξετε τους αριθμούς μέσα σε αυτόν. Αν προσθέσετε μια γραμμή όπως η ακόλουθη γραμμή, εμφανίζεται ένα σφάλμα μεταγλωττιστή, επειδή ο μεταγλωττιστής γνωρίζει τις σταθερές:

Μόνιμη [2] = 5;

Εδώ εμφανίζεται το σφάλμα που παίρνετε όταν δοκιμάζετε αυτό στο Code:: Αποκλεισμός:

σφάλμα: αντιστοίχιση θέσης μόνο για ανάγνωση 'Permanent [2]'

Τι γίνεται με μια συνεχή σειρά nonconstants; Μπορείς να το κάνεις αυτό? Λοιπόν, μερικές φορές - ανάλογα με τον μεταγλωττιστή. Όπως φρικτό όπως ο παρακάτω κώδικας (που βρίσκεται στο παράδειγμα Array06) φαίνεται - και δεν είναι πρότυπο ANSI! - μπορείτε να το κάνετε αυτό με παλαιότερες εκδόσεις των μεταγλωττιστών gcc. (Το Microsoft Visual C ++ και το Borland C ++ Builder δεν το επιτρέπουν και ο κώδικας:: Ο μεταγλωττιστής μπλοκ σας παρουσιάζει ένα σφάλμα: μη έγκυρο μήνυμα σφάλματος εκχώρησης πίνακα.)

int NonConstant [5] = {1, 2, 3, 4, 5}. int ΆλλοςList [5] = {10, 11, 12, 13, 14}. OtherList = NonConstant.

Με άλλα λόγια, αυτή η τρίτη γραμμή λέει, "Ξεχάστε τι δείχνει το OtherList. Αντίθετα, το κάνετε στο πρώτο πεδίο {1, 2, 3, 4, 5}! "Τώρα, πραγματικά δεν πρέπει να γράψετε κώδικα όπως αυτό (θυμηθείτε, κρατήστε τα πράγματα απλά και κατανοητά), έτσι εάν θέλετε να αποφύγετε τέτοιου είδους πράγματα, μπορείτε να κάνετε τη συστοιχία σταθερή:

! - 3 ->
const int NonConstant [5] = {1, 2, 3, 4, 5}. const int ΆλλοList [5] = {10, 11, 12, 13, 14}. OtherList = NonConstant.

Τώρα, όταν ο μεταγλωττιστής φτάνει στην τρίτη γραμμή, σας δίνει σφάλμα:

σφάλμα: ανάθεση της μεταβλητής μόνο για ανάγνωση 'OtherList'

Αλλά ίσως παρατηρήσετε ότι ο τρόπος που δημιουργήσατε τη σταθερά του πίνακα ήταν με τον ίδιο τρόπο που κάνατε τα στοιχεία του σταθερά στον κώδικα που ήρθε ακριβώς πριν από αυτό το παράδειγμα. Ωχ! Τι είναι αυτό; Αποδεικνύει ότι υπάρχουν ορισμένοι κανόνες.

Η παρακάτω λίστα περιγράφει τους κανόνες, λεπτομερώς, για τη σταθερότητα των συστοιχιών:

  • Αν θέλετε να κάνετε μια παράμετρο σταθερή, μπορείτε να προηγηθεί ο τύπος της με τη λέξη const. Όταν το κάνετε αυτό, το όνομα της συστοιχίας είναι σταθερό και τα στοιχεία εντός του πίνακα είναι σταθερά και . Επομένως δεν μπορείτε να έχετε μια σταθερή συστοιχία με μη σταθερά στοιχεία, ούτε μπορείτε να έχετε έναν μη σταθερό πίνακα με σταθερά στοιχεία.

  • Η έννοια ενός nonconstant array υπάρχει μόνο στο gcc και δεν είναι πρότυπο ANSI.

Εάν θέλετε πραγματικά να πάρετε τεχνική, το πρότυπο C ++ ANSI λέει ότι όταν βάζετε τη λέξη const μπροστά από μια δήλωση πίνακα, δεν κάνετε τη συστοιχία σταθερή. λέτε ότι ο πίνακας διατηρεί μόνο σταθερές.

Ωστόσο, όταν χρησιμοποιείτε το const με αυτόν τον τρόπο, οι περισσότεροι μεταγλωττιστές κάνουν επίσης τον ίδιο τον πίνακα σταθερό. Αλλά αυτό είναι εντάξει. οι άνθρωποι δεν πρέπει να παίρνουν ένα όνομα πίνακα και να το αντιγράφουν σε κάτι άλλο. Αυτό δεν είναι καλό στυλ προγραμματισμού, και απλά ζητά σφάλματα - ή, τουλάχιστον, σύγχυση - αργότερα.

Κτίριο σταθερές πίνακες σε C ++ - ανδρείκελα

Η επιλογή των συντακτών

Πώς να αλλάξετε τη ρύθμιση ισορροπίας λευκού σε ετικέτες Canon EOS 70D

Πώς να αλλάξετε τη ρύθμιση ισορροπίας λευκού σε ετικέτες Canon EOS 70D

Χρησιμοποιώντας το Ο έλεγχος εξισορρόπησης λευκού στο Canon EOS 70D σας μπορεί εύκολα και γρήγορα να διορθώσει προβλήματα χρώματος. Οι διαθέσιμες ρυθμίσεις ισορροπίας λευκού απεικονίζονται με τα σύμβολα που εμφανίζονται στον παρακάτω πίνακα. Μπορείτε να δείτε την τρέχουσα ρύθμιση στην οθόνη Ρυθμίσεις λήψης, όπως φαίνεται στο παρακάτω σχήμα. Για να προσαρμόσετε τη ρύθμιση, έχετε ...

Η επιλογή των συντακτών

Προετοιμασία αντιγράφου TIFF ψηφιακής εικόνας για δημοσίευση - ανδρεικέλες

Προετοιμασία αντιγράφου TIFF ψηφιακής εικόνας για δημοσίευση - ανδρεικέλες

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

Εξάγοντας το περίγραμμα επιλογής του ψηφιακού σας επεξεργαστή εικόνας - ανδρείκελα

Εξάγοντας το περίγραμμα επιλογής του ψηφιακού σας επεξεργαστή εικόνας - ανδρείκελα

Η πρώτη προσπάθεια. Αναμείνετε να βελτιώσετε το περίγραμμα επιλογής σας τουλάχιστον λίγο. Μπορείτε να βελτιώσετε το περίγραμμα σας με διάφορους τρόπους: Αντίστροφη περιγράμματος επιλογής: Απλά χρησιμοποιήστε την εντολή Invert (ή την αντίστοιχη εντολή του προγράμματος). Προσθέστε σε περίγραμμα επιλογής: ...

Επιλογή από τις άκρες της ψηφιακής εικόνας - ανδρείκελα

Επιλογή από τις άκρες της ψηφιακής εικόνας - ανδρείκελα

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

Η επιλογή των συντακτών

Πώς να χρησιμοποιείτε το παράθυρο μητρώου του QuickBooks 2010 - dummies

Πώς να χρησιμοποιείτε το παράθυρο μητρώου του QuickBooks 2010 - dummies

Για να εργαστείτε ευκολότερα με το παράθυρο του Μητρώου και να ελέγξετε τον τρόπο εμφάνισής του: Το κουμπί Μετάβαση: Εμφανίζει το παράθυρο διαλόγου Μετάβαση (Go To). Αυτό το παράθυρο διαλόγου σάς επιτρέπει να αναζητήσετε μια συναλλαγή στο παράθυρο "Εγγραφή". Για παράδειγμα, μπορείτε να αναζητήσετε ...

Πώς να εργάζεστε με έναν υπάρχοντα προϋπολογισμό σε QuickBooks - dummies

Πώς να εργάζεστε με έναν υπάρχοντα προϋπολογισμό σε QuickBooks - dummies

Σε μεγάλες εταιρείες με εκατοντάδες ή χιλιάδες εργαζόμενοι, δύο ή τρία άτομα δαπανούν μεγάλο μέρος ή και ολόκληρο το χρόνο εργασίας τους με τα στοιχεία που έχουν εγγραφεί στον προϋπολογισμό. Για να επεξεργαστείτε έναν υπάρχοντα προϋπολογισμό στο QuickBooks, ακολουθήστε τα παρακάτω βήματα:

Πώς να χρησιμοποιείτε τα κουτιά παραθύρων αναφορών του QuickBooks - dummies

Πώς να χρησιμοποιείτε τα κουτιά παραθύρων αναφορών του QuickBooks - dummies

Από, Προς, Στήλες και Ταξινόμηση. Αυτά τα πλαίσια σας επιτρέπουν επίσης να ελέγχετε τις πληροφορίες που εμφανίζονται στο παράθυρο αναφοράς και την εμφάνιση των πληροφοριών. Για παράδειγμα, μπορείτε να ενημερώσετε το QuickBooks για το χρονικό διάστημα που θέλετε ...