Modern C++ (6) : Lambda İfadeleri

Evet arkadaşlar, C++ yazılarımıza kaldığımız yerden devam ediyoruz. Lambda yazım ile temel C++ 11 özelliklerini tamamlamış olacağız. Sonrasında belki STL için de bir yazı yazıp, daha sonra C++ 14/17/20’e yelken açabiliriz. Aslında oldukça geniş konu, fakat ben bu yazımda sizlere temel noktaları aktarmaya çalışacağım. Öncelikle  benim gibi bilgisayar bilimleri ile uğraşanlarımız Lambda denilince hemen aklınıza… Continue reading

Stringified Enums

Merhaba arkadaşlar geçenlerde izlediğim bir videoda gördüğümü ve hoşuma giden bir C++ kütüphanesinden bahsedeceğim sizlere. Kütüphanenin temel amacı eski enum’lar ve C++ 11 ile gelen enum class değerlerini string olarak derleme  zamanında elde etmeyi amaçlayan bir kütüphane. Eminim siz c++ geliştiricileri hayatınızın bir noktasında buna ihtiyaç duymuşsunuzdur ve çok çeşitli yöntemlerde geliştirmişsinizdir. Her seferinde bunu… Continue reading

Modern C++ (5) : Taşıma Semantikleri

Evet bir diğer Modern C++ 11 ile yazımız ile tekrar birlikteyiz. Bu yazımızda C++ 11 ile gelen önemli değişikliklerden biri olan “Move Semantics” yani Taşıma Semantiklerinden sizlere bahsedeceğim. Bu konu da derya deniz bir konu. Bu yazımda sadece önemli hususların üzerinden geçip, genel mantığı sizlere aktarıp, kalanını naçizane sizlere bırakacağım 🙂 Daha lambda’lar var gardaşım… Continue reading

Modern C++ (4) : Smart Pointers – II

Evet arkadaşlar akıllı işaretçiler serüvenimize devam ediyoruz. Bu yazımda akıllı C++11 ile gelen shared_ptr ve weak_ptr sınıflarını inceleyeceğiz. İlk yazıma aşağıdaki adresten ulaşabilirsiniz. Modern C++ (4) : Smart Pointers – I std::shared_ptr Akıllı işaretçi denildiğinde akla gelen ilk sınıf std::shared_ptr. std::unique_ptr’dan farklı olarak “reference counting”  dediğimiz kabiliyeti barındıran, içerdiği nesnenin birden fazla sınıf tarafından kullanılmasına… Continue reading

Modern C++ (3): Uniform Initialization, override/final, default/delete, constexpr, vb.

Bir diğer Modern C++ yazım ile sizlerle birlikteyim 🙂 Önceki Modern C++ yazılarıma aşağıdaki bağlantılardan ulaşabilirsiniz. Modern C++ (1): nullptr, enum sınıfları, range-based döngüler, auto Modern C++ (2): C++ 11 Yenilikleri Bu yazımızda C++ 11 ile gelen yenilikleri incelemeye devam edeceğiz. C++11 ile gelen bütün yenilikler için yukarıdaki ikinci yazıma ulaşabilirsiniz. Bu yazımda diğer yenilikler… Continue reading

Modern C++ (1): nullptr, enum sınıfları, range-based döngüler, auto

Gerek akademik/iş hayatımda gerekse kişisel projelerimde ağılıklı olarak kullandığım programlama dili C++. Gerçi artık bir çok güçlü ve istediklerinizi hızlı bir şekilde gerçekleştirilmesine olanak sağlayacak programlama dilleri olsa da (C#, Ruby, Kotlin, Python, Java, vs), ben C++ ı daha çok tercih ediyorum. İlk başlarda ilgilendiğim konularda (2B/3B bilgisayar grafikleri, oyun geliştirme, simülasyon sistemleri, gömülü sistemler)… Continue reading