Menu
Coddy logo textTech

Przestrzenie nazw i zakres

Część sekcji Programowanie obiektowe ścieżki C++ w Coddy. Lekcja 4 z 104.

Przestrzenie nazw grupują powiązany kod i zapobiegają konfliktom nazw. Operator rozstrzygania zakresu :: umożliwia dostęp do elementów wewnątrz przestrzeni nazw.

Tworzenie przestrzeni nazw

namespace MathTools {
    int add(int a, int b) {
        return a + b;
    }
}

Dostęp za pomocą operatora rozstrzygania zakresu ::

int result = MathTools::add(5, 3);  // result = 8

Używanie dyrektywy pozwalającej uniknąć wpisywania przestrzeni nazw za każdym razem

using namespace MathTools;
int result = add(5, 3);  // To samo co MathTools::add(5, 3)

Przestrzeń nazw std

std::cout << "Hello" << std::endl;
// lub
using namespace std;
cout << "Hello" << endl;

Przestrzenie nazw porządkują kod i zapobiegają konfliktom nazw. Przestrzeń nazw std zawiera wszystkie elementy biblioteki standardowej C++, takie jak cout, cin, string i endl.

challenge icon

Wyzwanie

Średni

Utwórz funkcje wewnątrz przestrzeni nazw MathTools:

  • add(int a, int b): zwraca sumę
  • multiply(int a, int b): zwraca iloczyn

Zadeklaruj je w pliku MathTools.h i zaimplementuj w pliku MathTools.cpp.

Spróbuj swoich sił

#include <iostream>
#include "MathTools.h"

int main() {
    int a, b;
    std::cin >> a >> b;
    
    std::cout << "Add: " << MathTools::add(a, b) << std::endl;
    std::cout << "Multiply: " << MathTools::multiply(a, b) << std::endl;
    return 0;
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Programowanie obiektowe

Poćwicz samodzielnie: Kompilator C++ online