Τι είναι ένα αρχείο HPP;
Η μορφή αρχείου “.hpp” χρησιμοποιείται συνήθως για αρχεία κεφαλίδας στη γλώσσα προγραμματισμού C++. Τα αρχεία κεφαλίδας συνήθως περιέχουν δηλώσεις και ορισμούς συναρτήσεων, κλάσεων, μεταβλητών και σταθερών που χρησιμοποιούνται από άλλα αρχεία πηγαίου κώδικα στο έργο C++.
Ο σκοπός της χρήσης αρχείων κεφαλίδας είναι να παρέχει έναν τρόπο κοινής χρήσης κοινού κώδικα σε πολλαπλά αρχεία πηγαίου κώδικα χωρίς να αντιγράφεται ο ίδιος ο κώδικας. Όταν το αρχείο προέλευσης C++ χρειάζεται πρόσβαση σε δηλώσεις ή ορισμούς από το αρχείο κεφαλίδας, περιλαμβάνει το αρχείο κεφαλίδας χρησιμοποιώντας την οδηγία προεπεξεργαστή «#include».
Η επέκταση αρχείου “.hpp” χρησιμοποιείται συχνά για να υποδείξει ότι ένα αρχείο είναι αρχείο κεφαλίδας C++. Δεν απαιτείται η χρήση αυτής της συγκεκριμένης επέκτασης για αρχεία κεφαλίδας και μπορεί επίσης να συναντήσετε αρχεία κεφαλίδας με “.h” ή άλλες επεκτάσεις. Η επιλογή της επέκτασης είναι σε μεγάλο βαθμό θέμα σύμβασης και προσωπικής προτίμησης.
Όταν ένα αρχείο πηγής C++ περιλαμβάνει αρχείο κεφαλίδας χρησιμοποιώντας το «#include», ο μεταγλωττιστής συνδυάζει αποτελεσματικά το περιεχόμενο του αρχείου κεφαλίδας με το αρχείο προέλευσης πριν το μεταγλωττίσει ως μονάδα. Αυτό επιτρέπει στο αρχείο προέλευσης να έχει πρόσβαση σε δηλώσεις και ορισμούς στο αρχείο κεφαλίδας, παρέχοντας τις απαραίτητες πληροφορίες στον μεταγλωττιστή για να εκτελέσει τον έλεγχο τύπου και τη δημιουργία κώδικα.
Τι περιέχει το αρχείο HPP;
Ακολουθούν ορισμένα κοινά περιεχόμενα που μπορεί να βρείτε στο αρχείο “.hpp”:
- Δηλώσεις συναρτήσεων: Τα αρχεία κεφαλίδων συχνά περιλαμβάνουν δηλώσεις συναρτήσεων χωρίς τις πραγματικές υλοποιήσεις τους. Αυτές οι δηλώσεις παρέχουν πληροφορίες σχετικά με το όνομα της συνάρτησης, τον τύπο επιστροφής και τις παραμέτρους, επιτρέποντας σε άλλα αρχεία πηγαίου κώδικα να χρησιμοποιούν τη λειτουργία χωρίς να χρειάζεται να γνωρίζουν λεπτομέρειες υλοποίησης.
- Δηλώσεις κλάσεων: Τα αρχεία κεφαλίδας μπορούν να περιέχουν δηλώσεις κλάσης, συμπεριλαμβανομένων των ονομάτων κλάσης, μεταβλητών μελών, συναρτήσεων μέλους και προσδιοριστών πρόσβασης. Συμπεριλαμβάνοντας τη δήλωση κλάσης στο αρχείο κεφαλίδας, άλλα αρχεία πηγαίου κώδικα μπορούν να δημιουργήσουν αντικείμενα αυτής της κλάσης και να αποκτήσουν πρόσβαση στα μέλη της.
- Σταθερές δηλώσεις: Τα αρχεία κεφαλίδας μπορούν να ορίσουν σταθερές, όπως καθολικές μεταβλητές ή τιμές enum που προορίζονται για κοινή χρήση πολλών αρχείων πηγαίου κώδικα. Αυτές οι σταθερές μπορούν να προσπελαστούν συμπεριλαμβάνοντας το αρχείο κεφαλίδας σε άλλα αρχεία προέλευσης, επιτρέποντάς τους να χρησιμοποιούν τις καθορισμένες σταθερές.
- Ορισμοί τύπων: Τα αρχεία κεφαλίδας μπορεί να περιέχουν ορισμούς τύπων χρησιμοποιώντας λέξη-κλειδί “typedef” ή ψευδώνυμα πληκτρολογήστε χρησιμοποιώντας τη λέξη-κλειδί “χρήση”. Αυτοί οι ορισμοί δημιουργούν νέα ονόματα για υπάρχοντες τύπους, καθιστώντας τον κώδικα πιο ευανάγνωστο και διατηρήσιμο.
- Ενσωματικοί ορισμοί συναρτήσεων: Σε ορισμένες περιπτώσεις, τα αρχεία κεφαλίδας μπορεί να περιέχουν ενσωματωμένους ορισμούς συναρτήσεων. Οι ενσωματωμένες συναρτήσεις είναι μικρές συναρτήσεις που επεκτείνονται στην τοποθεσία κλήσης αντί να καλούνται ως ξεχωριστή συνάρτηση. Η συμπερίληψη του ενσωματωμένου ορισμού συνάρτησης στο αρχείο κεφαλίδας επιτρέπει στον μεταγλωττιστή να αντικαταστήσει την κλήση συνάρτησης με το σώμα της συνάρτησης άμεσα, βελτιώνοντας πιθανώς την απόδοση.
Παράδειγμα αρχείου HPP
#ifndef PERSON_HPP
#define PERSON_HPP
#include <string>
class Person {
private:
std::string name;
int age;
public:
Person();
Person(const std::string& name, int age);
void setName(const std::string& newName);
void setAge(int newAge);
std::string getName() const;
int getAge() const;
void printInfo() const;
};
#endif
Ποια είναι η μορφή του αρχείου HPP;
Το HPP είναι ένα αρχείο απλού κειμένου αλλά ακολουθεί τους γενικούς κανόνες και τη σύνταξη της γλώσσας προγραμματισμού C++. Ακολουθεί μια ανάλυση της γενικής μορφής και δομής του αρχείου “.hpp”:
- Προστατευτικά κεφαλίδας: Συνήθως, ένα αρχείο “.hpp” ξεκινά με προστατευτικά κεφαλίδας για την αποφυγή πολλαπλών συμπερασμάτων του ίδιου αρχείου. Αυτό επιτυγχάνεται χρησιμοποιώντας οδηγίες προεπεξεργαστή όπως «#ifndef», «#define» και «#endif». Το προστατευτικό κεφαλίδας διασφαλίζει ότι τα περιεχόμενα του αρχείου περιλαμβάνονται μόνο μία φορά κατά τη διαδικασία μεταγλώττισης.
- Συμπερίληψη δηλώσεων: Μετά τα προστατευτικά κεφαλίδων, μπορείτε να συμπεριλάβετε άλλα απαραίτητα αρχεία κεφαλίδας χρησιμοποιώντας την οδηγία «#include». Αυτές μπορεί να περιλαμβάνουν τυπικές κεφαλίδες βιβλιοθήκης ή άλλες προσαρμοσμένες κεφαλίδες που απαιτούνται από τον κώδικά σας.
- Δηλώσεις και ορισμοί: Το κύριο περιεχόμενο του αρχείου “.hpp” είναι οι δηλώσεις και, σε ορισμένες περιπτώσεις, οι ορισμοί κλάσεων, συναρτήσεων, σταθερών, ψευδωνύμων τύπου και άλλων στοιχείων. Για παράδειγμα, μπορείτε να δηλώσετε κλάσεις χρησιμοποιώντας τη λέξη-κλειδί «class», συναρτήσεις χρησιμοποιώντας τον τύπο επιστροφής, το όνομα και τη λίστα παραμέτρων και σταθερές χρησιμοποιώντας τη λέξη-κλειδί «const» ακολουθούμενη από τον τύπο και το όνομά τους.
- Ενσωματικοί ορισμοί συναρτήσεων: Σε ορισμένες περιπτώσεις, μπορείτε να συμπεριλάβετε ενσωματωμένους ορισμούς συναρτήσεων απευθείας στο αρχείο “.hpp”. Οι ενσωματωμένες συναρτήσεις ορίζονται συνήθως μέσα στο σώμα της κλάσης, που σημαίνει ότι ο ορισμός της συνάρτησης περιλαμβάνεται μαζί με τη δήλωσή της. Αυτό μπορεί να γίνει με το πρόθεμα του ορισμού συνάρτησης με τη λέξη-κλειδί «inline».
- Δηλώσεις χώρου ονομάτων: Εάν χρησιμοποιείτε χώρους ονομάτων στον κώδικά σας, μπορείτε να τους δηλώσετε στο αρχείο “.hpp”. Αυτό γίνεται χρησιμοποιώντας τη λέξη-κλειδί «χώρος ονομάτων» ακολουθούμενη από όνομα χώρου ονομάτων και περικλείοντας τον σχετικό κώδικα μέσα στο μπλοκ χώρου ονομάτων.
βιβλιογραφικές αναφορές
See Also
- Αρχείο BIB - Βιβλιογραφία BibTeX - Τι είναι ένα αρχείο .bib και πώς να το ανοίξετε;
- Αρχείο FS - Visual F# Source File - Τι είναι ένα αρχείο .fs και πώς να το ανοίξετε;
- Αρχείο GED - Αρχείο δεδομένων γενεαλογίας GEDCOM - Τι είναι ένα αρχείο .ged και πώς να το ανοίξετε;
- Αρχείο INO - Arduino Sketch - Τι είναι ένα αρχείο .ino και πώς να το ανοίξετε;
- Αρχείο MAX - 3ds Max Scene File - Τι είναι ένα αρχείο .max και πώς να το ανοίξετε;