namespace tanımlama
- C++ kursu
- Başlangıç
- Ders 106/116
- 5 dk
namespace ile ad alanı tanımlamayı öğrenirsin.
namespace ile ad alanı
Büyük projelerde aynı isimli işlev veya değişkenler çakışabilir. C++ bu sorunu namespace ile çözer; ilgili bildirimleri bir ad alanı altında gruplandırırsın.
namespace math {
int add(int a, int b) {
return a + b;
}
}Burada add işlevi math ad alanının içindedir. Dışarıdan çağırmak için math::add(2, 3) yazarsın. :: kapsam çözümleme operatörüdür ve ad alanındaki öğeye erişmeyi sağlar.
Kapsam çözümleme operatörü
Bir ad alanının içindeki öğeye dışarıdan erişmek için :: operatörünü kullanırsın. Ad alanı adı önce, öğe adı sonra yazılır.
int n = math::add(2, 3); // n = 5Burada math::add, math ad alanındaki add işlevini çağırır. Bu operatör aynı zamanda sınıf üyelerine ve global değişkenlere erişmek için de kullanılır. Ad alanları iç içe olduğunda zincirleme yazılır: outer::inner::foo().
Uygulama math ad alanı ve çağrı
namespace math tanımla. İçinde int add(int a, int b) { return a + b; } işlevini yaz. main içinde int n = math::add(2, 3); ile çağır, cout << n << endl; yazdır.
Başlangıç kodu
#include <iostream>
using namespace std;
// math ad alanını tanımla
int main() {
// ad alanındaki işlevi çağır ve yazdır
return 0;
}Örnek çözüm
#include <iostream>
using namespace std;
namespace math {
int add(int a, int b) {
return a + b;
}
}
int main() {
int n = math::add(2, 3);
cout << n << endl;
return 0;
}Beklenen çıktı
5
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Bir ad alanı tanımlamak için hangi anahtar sözcük kullanılır?
- package
- module
- namespace Doğru cevap
- scope
Açıklama: C++'ta ad alanı namespace ile tanımlanır.
2 Boşluğu doldur: ad alanı çağrısı
int n = math____:add(2, 3);
int n = math::add(2, 3);
Açıklama: operatörü ad alanındaki öğeye eriştirir.
3 İfadeyi amacıyla eşleştir
| Kavram | Anlamı |
|---|---|
namespace math |
ad alanı tanımlar |
math::add |
içteki işlevi çağırır |
:: |
kapsam operatörü |