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