User Tools

Site Tools


cpp:namespace

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
cpp:namespace [2017/04/11 14:07]
gthanos
cpp:namespace [2017/04/12 07:09]
gthanos
Line 1: Line 1:
-====== Namespaces ======+====== Χώροι Ονομάτων (Namespaces======
  
-Προκειμένου να αποφεύγονται οι συγκρούσεις ονομάτων μεταξύ //global// μεταβλητών, κλάσεων ή συνάρτησεων η C++ ορίζει την έννοια του χώρου ονομάτων (//namespace//). Ένα //namespace// δίνει την δυνατότητα να ορίσουμε μεταβλητές, κλάσεις και μεθόδους σε ένα συγκεκριμένο χώρο ονομάτων. Η ύπαρξη πολλών //namespaces// δίνει την δυνατότητα να ορίσουμε δύο ή περισσότερες μεταβλητές, κλάσεις ή συναρτήσεις με το ίδιο όνομα που ανήκουν όμως σε διαφορετικούς χώρους ονομάτων.+Προκειμένου να αποφεύγονται οι συγκρούσεις ονομάτων μεταξύ //global// μεταβλητών, κλάσεων ή συνάρτησεων η C++ ορίζει την έννοια του χώρου ονομάτων (//namespace//). Ένας χώρος ονομάτων δίνει την δυνατότητα να ορίσουμε μεταβλητές, κλάσεις και μεθόδους μοναδικές μόνο για το συγκεκριμένο χώρο ονομάτων. Άλλοι χώροι ονομάτων μπορεί να περιέχουν μεταβλητές, κλάσεις ή μεθόδους με τα ίδια ονόματα. Η ύπαρξη περισσότερων του ενός χώρων ονομάτων δίνει την δυνατότητα να ορίσουμε δύο ή περισσότερες μεταβλητές, κλάσεις ή συναρτήσεις με το ίδιο όνομα σε διαφορετικούς χώρους ονομάτων.
  
 Ένα //namespace// ορίζεται ως εξής: Ένα //namespace// ορίζεται ως εξής:
Line 9: Line 9:
 } }
 </code> </code>
 +
 Για παράδειγμα Για παράδειγμα
 <code c++> <code c++>
Line 21: Line 22:
 Η προσπέλαση/χρήση των περιεχομένων ενός namespace μπορεί να γίνει με τρεις τρόπους. Η προσπέλαση/χρήση των περιεχομένων ενός namespace μπορεί να γίνει με τρεις τρόπους.
  
-=== Δηλώνοντας το namespace σε κάθε κλήση των περιεχομένων του με την βοήθεια του τελεστή ''::'' ===+=== Δηλώνοντας το namespace σε κάθε κλήση των περιεχομένων του με την βοήθεια του τελεστή :: === 
 + 
 +<WRAP center round tip 80%> 
 +Ο τελεστής ''::'' ονομάζεται //scope operator//
 +</WRAP>
  
 <code c++ namespace.cpp> <code c++ namespace.cpp>
Line 38: Line 43:
 </code> </code>
  
-=== με δήλωση συγκεκριμένων ονομάτων που θα χρησιμοποιηθούν από το namespace ===+=== Mε δήλωση μόνο των ονομάτων που θα χρησιμοποιηθούν ===
  
 Χρησιμοποιούμε την έκφραση ''using namespace_name::var_name'', όπως παρακάτω: Χρησιμοποιούμε την έκφραση ''using namespace_name::var_name'', όπως παρακάτω:
Line 59: Line 64:
 </code> </code>
  
-=== με μία δήλωση των namespaces που θα χρησιμοποιηθούν ===+=== Με δήλωση του namespace από το οποίο θα χρησιμοποιηθούν συγκεκριμένα ονόματα === 
 Χρησιμοποιούμε την έκφραση ''using namespace namespace_name'', όπως παρακάτω: Χρησιμοποιούμε την έκφραση ''using namespace namespace_name'', όπως παρακάτω:
 <code c++ namespace.cpp> <code c++ namespace.cpp>
cpp/namespace.txt · Last modified: 2021/05/06 22:52 (external edit)