Snake v1.0

Merhaba arkadaşlar, bir süredir hareketlendirmediğimiz örnek oyun paylaşımlarını bir nebze hareketlendirmek adına bir sonraki oyunumuzu paylaşmanın vakti geldi. Evet tetris oyunundan sonra bu sefer yine klasikler arasında olan yılan oyunu ile karşınızdayım. Oyuna ilişkin önemli noktalar şu şekilde: Oyunumuzun adı “Begüm Yılan Terbiyecisi” 🙂 Oyunu C++ kullanarak (olabildiğince modern yetenekler ile) konsol uygulaması (evet öle… Continue reading

Haftalık C++ 7- std::thread (I)

Bir başka haftalık C++ yazısı ile tekrar beraberiz. Bu yazımda, sizlere C++ 11 ile birlikte sunulmaya başlanan bir kütüphane bilgi aktaracağım. Bu kütüphaneden daha önce tamamladığım Modern C++ yazılarımda bahsetmemiştim (neden diye sormayın), ama artık vakti geldi. Eminim geliştirdiğiniz programlarda, özellikle çoklu çekirdeğe sahip işlemciler için :), bir noktada buna ihtiyacınız olmuştur.  Evet, tahmin edebileceğiniz… Continue reading

Haftalık C++ 6 – Dosya Sistemi Kütüphanesi

Herkese merhabalar, bir aradan sonra (umarım çok da uzun olmayan), yeni bir haftalık C++ yazımız ile birlikteyiz. Bu yazımda, sizler ile birlikte uzun bir süre beklenen (aslında Java ve .Net gibi bir çok platform ile sunulan ama C++ da standart bir şekilde sunulmayan) STL kabiliyeti olan, dosya sistemi kütüphanesine bir göz atacağız. Bu kütüphane, aslında… Continue reading

Haftalık C++ 5 – std::invoke

Merhaba sevgili yazılımperver dostlarım. Yine bir haftalık C++ yazısı ile sizlerle birlikteyim. Bu yazımda sizler ile birlikte C++ 17 ile birlikte sunulmaya başlanan std::invoke() metoduna bir göz atacağız. std::invoke() metodu <functional> kütüphanesi ile sunulmakta. Bu metot sayesinde farklı çağrılabilir nesneler (serbest fonksiyon işaretçileri, sınıf metodu işaretçileri, lambda metotları, fonksiyon nesneler), tek bir mekanizma ile çağrılabilecek. Bu… Continue reading

Haftalık C++ – 4 Yapısal Bağlama (“Structured Binding”)

Merhabalar arkadaşlar, yeni bir haftalık C++ yazısı ile birlikteyiz. Bu yazımızda da modern C++ 17 ile birlikte gelen bir diğer kabiliyet olan “Structured Binding”‘e bakacağız. Ben yazımda buna kısaca “yapısal bağlama” diyeceğim. Bu kabiliyet bize ne kazandırıyor? Kısaca bu kabiliyet ile birlikte birden fazla değişkenin tek bir ifade ile “tuple”/”pair” ya da benzeri yapıları kullanarak… Continue reading

Haftalık C++ 3 – if/switch ilklendirme ifadeleri

Bu yazımda, C++ 17 ile gelen ve değişkenlerin tanımlı olduğu kapsamları kısıtlamamıza yardımcı olacak yeni bir kapsam mekanizmasından bahsedeceğim. Bildiğiniz gibi, tanımladığınız değişkenlerin kapsamlarını olabildiğince küçük olacak (yani geçerli olduğu kapsamı azaltmak) şekilde tanımlamak tavsiye edilen bir yöntemdir. Değişkenleri olabildiğince küçük bir kapsam içerisinde ve ilk kullanıma yakın tanımlayın. Peki neden? Her ne kadar çoğu… Continue reading