Bu sorunun ilk olarak 2009'da, C ++ 11 onaylanmadan önce ve
autoanahtar kelimenin anlamı büyük ölçüde değiştirilmeden önce yayınlandığını unutmayın . Verilen yanıtlar, yalnızca C ++ 03'ün anlamı ile ilgilidirauto- bu, belirtilen bir depolama sınıfıdır - ve C ++ 11'in anlamıauto- otomatik tür kesintisi değildir. C ++ 11'i ne zaman kullanacağınızla ilgili tavsiye arıyorsanızauto, bu soru bu soruyla alakalı değildir.
En uzun süre, kullanmak için bir neden olmadığını düşündüm. static anahtar kelimeyi C'de , çünkü blok kapsamının dışında bildirilen değişkenler dolaylı olarak küreseldi. Sonra, bir değişkeni staticblok kapsamı içinde ilan etmenin ona kalıcı bir süre vereceğini ve onu blok kapsamı dışında (program kapsamında) ilan etmenin ona dosya kapsamı vereceğini keşfettim (sadece bu derleme biriminde erişilebilir).
Yani bu bana, henüz tam olarak anlamadığım (belki de) tek bir anahtar kelime bırakıyor: autoAnahtar kelime. Bunun 'yerel değişken'den başka bir anlamı var mı? Kullanmak isteyebileceğiniz her yerde sizin için dolaylı olarak yapılmayan herhangi bir şey? Bir autodeğişken program kapsamında nasıl davranır? static autoDosya kapsamındaki bir değişken nedir ? Bu anahtar kelimenin tamlık için var olmaktan başka bir amacı var mı ?