-Редът **`using namespace std;`** означава използвай namespace **`std`**. Какво е namespace? Представете си, че по даден проект работят много хора, сред които Пешо и Гошо. Пешо иска да си кръсти някоя променлива **`count`**, но и Гошо иска да използва променлива с име **`count`**. За компилатора тези две променливи ще означават едно и също, независимо дали Пешо или Гошо я използва. За да се реши този проблем, се използва **namespace**. Тогава Пешо ще си има namespace **`Peter`**, а Гошо ще си има namespace **`Geore`**. За да използва Пешо своята променлива **`count`**, ще напише **`Peter::count`**, а Гошо, за да използва своята променлива **`count`**, ще напише съответно **`George::count`**. Тогава вече компилаторът ще прави разлика между променливата **`count`** на Гошо и съответно на Пешо. Символите **`::`** означават да се вземе променливата, написана отдясно на **`::`**, от namespace-а, написан отляво на **`::`**.
0 commit comments