Bu depo, C++ programlama dilini öğrenmek isteyen herkes için hazırlanmış, pratik odaklı ve güncel bir rehberdir. Amacımız, teorik bilgileri anlaşılır kod örnekleri ve mini projelerle birleştirerek sağlam bir programlama temeli oluşturmanıza yardımcı olmaktır.
C++, yazılım dünyasının en güçlü ve en hızlı dillerinden biridir. Oyun geliştirme, yüksek performanslı sistemler ve gömülü sistemler gibi birçok alanda vazgeçilmezdir. Bu rehber, sizi karmaşık konularda boğmadan, temelden başlayarak adım adım ilerlemenizi sağlar.
- Adım Adım İlerleme: Konular, birbirinin üzerine inşa edilerek mantıksal bir sırayla düzenlenmiştir.
- Pratik Odaklı: Her konunun sonunda, öğrendiklerinizi pekiştirmeniz için küçük egzersizler ve mini projeler bulacaksınız.
- Modern C++: Rehber, eski C++ pratikleri yerine, modern C++ (C++11, C++14, C++17) özelliklerine odaklanır.
- Bu depoyu yerel bilgisayarınıza klonlayın:
git clone https://github.com/Ozkanyildizz/Cpp-Guide.git
- Klasörleri sırasıyla, 01'den başlayarak takip edin.
- Her klasörün içindeki
README.md
dosyalarını okuyarak o konunun detaylarını ve örneklerini inceleyin. - Kodları kendiniz derleyip çalıştırın ve üzerinde denemeler yapın.
- Bir projede birden fazla main fonksiyonu olursa derleme hatası oluşur. Bunu önlemek için kodun başına
#if 0
ve sonuna#endif
ekleyerek o bölümü geçici olarak devre dışı bırakıyoruz. Böylece o kod derlenmez ve hata alınmaz.
Aşağıdaki konular, rehberin ana yapısını oluşturur. Üzerlerine tıklayarak ilgili bölümlere ulaşabilirsiniz.
-
- C++'a Giriş, Geliştirme Ortamı
- Değişkenler, Veri Tipleri ve Operatörler
- Koşul Yapıları (
if
,else
,switch
) - Döngüler (
for
,while
,do-while
)
-
- Fonksiyonlar ve Fonksiyon Aşırı Yükleme
- Diziler ve Karakter Dizileri
- Yapılar (
struct
) - İşaretçiler (
Pointers
)
-
03_Nesne_Yönelimli_Programlama
- OOP Prensipleri
- Sınıflar ve Nesneler
- Kurucular ve Yıkıcılar
- Kalıtım (
Inheritance
) - Çok Biçimlilik (
Polymorphism
)
-
- Dinamik Bellek Yönetimi ve Akıllı İşaretçiler
- Operatör Aşırı Yükleme
- Şablonlar (
Templates
) - Dosya İşlemleri
-
05_Standart_Kutuphane_ve_Uygulama
- Standart Şablon Kütüphanesi (STL)
- Hata Yönetimi (
try
,catch
) - Mini Proje Örnekleri
Bu rehberi daha iyi hale getirmemize yardımcı olmak isterseniz katkılarınızı bekleriz! Bir yazım hatası bulursanız, daha iyi bir örnek kodunuz varsa veya yeni bir konu eklemek isterseniz, lütfen bir "Pull Request" gönderin.
- [Özkan Yıldız]