inline isim alanları (inline namespaces) C++11 standartları ile dile eklenmiş bir özellik. Bir isim alanı inline anahtar sözcüğü ile bildirildiğinde bu isim alanı içindeki
Yazılar
C++ 17 içsel isim alanları (nested namespaces)
C++17 standartları ile gelen yeni özelliklerin hemen hepsi yaygın kullanımda olan derleyiciler tarafından gerçekleştirilmiş (implemente edilmiş) durumda. Bu yeni özelliklerden biri de içsel isim
saf sanal işlevlerin tanımlanması – 3
Taban sınıf, kendisinden kalıtım yoluyla elde edilecek türemiş sınıflara bir operasyon için bir arayüz ve bu arayüze ilişkin türemiş sınıfların kullanacağı kodun bir kısmını
saf sanal işlevlerin tanımlanması – 2
Bir taban sınıfın (saf olmayan) sanal işlevleri kalıtımla elde edilecek sınıflara hem bir arayüz hem de varsayılan bir kod sağlar. Kalıtımla elde edilecek sınıf,
saf sanal işlevlerin tanımlanması – 1
C++ dilinde taban sınıfların saf sanal işlevleri (pure virtual functions) kalıtım yoluyla elde edilecek sınıflara bir arayüz (interface) sunan ancak bir kod sağlamayan operasyonları
eşdeğişken geri dönüş türü (covariant return type)
Türemiş bir sınıfın taban sınıfının bir sanal işlevini ezecek (override) bir işlevinin, taban sınıf işleviyle hem aynı imzaya hem de aynı geri dönüş türüne
ya public sanal olsun ya da protected sanal olmasın
https://necatiergin2019.medium.com/destructor-ya-public-virtual-ya-da-protected-non-virtual-olmal%C4%B1-9bade0adc886
taban sınıf olarak tasarlanmamış sınıflardan türetme yapmaktan kaçının
Kalıtımda taban sınıf olacak şekilde tasarlanmamış bir sınıftan kalıtım yoluyla yeni bir sınıf oluşturmak hemen her zaman bir tasarım hatasıdır. Somut sınıflardan kalıtım yapmaktan
sağ taraf referansları – 2
mükemmel gönderim (perfect forwarding) Sağ taraf referanslarının çözüm sağladığı ikinci problem “mükemmel gönderim”. Önce bir örnekle problemin ne olduğunu anlamaya çalışalım. Aşağıdaki gibi bir
işlev göstericileri (function pointers) – 1
Nesnelerin nasıl adresleri varsa işlevlerin de adresleri vardır. Bir işlevin adresi, o işlevin makine kodlarının yerleştiği bellek bloğunun adresidir. C dilinde bir işlevin adresi,