autoAnahtar kelimeyi, özellikle döngüler için kullanmanın avantajları / dezavantajları nelerdir?
for(std::vector<T>::iterator it = x.begin(); it != x.end(); it++ )
{
it->something();
}
for(std::map<T>::iterator it = x.begin(); it != x.end(); it++ )
{
it->second->something();
}
for(auto it = x.begin(); it != x.end(); it++ )
{
it->??
}
Eğer bir harita ya da bilemeyiz bir vektör için bir yineleyici sahip olup olmadığını bilmiyorsanız gibi görünüyor kullanımına olsun firstya secondveya nesnenin sadece doğrudan erişim özellikleri, hayır?
Bu bana anahtar kelimenin kullanılıp kullanılmayacağına dair C # tartışmasını hatırlatıyor var. Şimdiye kadar aldığım izlenim, C ++ dünyasında insanların C # dünyasından autodaha az kavga ile anahtar kelimeyi benimsemeye hazır olmaları var. Benim için ilk içgüdüm, değişkenin türünü bilmek istememdir, böylece üzerinde ne gibi işlemler yapmayı bekleyebilirim.
for (auto& it : x)(veya kopyalamak istiyorsanız referans olmadan) kullanabilirsiniz
xve ne xolduğunu bile bilmiyorsanız , o döngüyü ilk etapta
varmu? Onu özledim.