capypad
0 Tage Serie
cpp / beginner
Snippet

Einführung in Namespaces

Ein Namespace ist ein benannter Gültigkeitsbereich, der zusammengehörige Code-Elemente zusammenfasst und Namenskonflikte verhindert. In größeren Projekten könnten zwei verschiedene Teile eine Funktion mit demselben Namen definieren; Namespaces lösen dies, indem sie den Namen mit dem Namespace-Präfix qualifizieren.

snippet.cpp
cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
 
namespace Math {
const double PI = 3.14159;
double square(double x) {
return x * x;
}
}
 
namespace Text {
void greet() {
std::cout << "Hello from Text namespace!" << std::endl;
}
}
 
int main() {
std::cout << "Pi: " << Math::PI << std::endl;
std::cout << "5 squared: " << Math::square(5) << std::endl;
Text::greet();
using namespace Math;
std::cout << "Using namespace: " << square(3) << std::endl;
return 0;
}
Erklärung
1
namespace Math {
Deklariert einen Namespace namens 'Math' für mathematikbezogenen Code
2
const double PI = 3.14159;
Eine Konstante, die innerhalb des Math-Namespace gespeichert ist
3
namespace Text {
Ein separater Namespace für textbezogene Funktionen
4
Math::square(5)
Der :: Operator greift auf square aus dem Math-Namespace zu
5
using namespace Math;
Alle Mitglieder von Math werden ohne :: direkt zugänglich