0 C++? aMap[key]
ve aMap.at(key)
aracılığıyla bir değer elde etmenin farkı nedir?Harita [] ve map.at C++ arasındaki fark?
16
A
cevap
14
C++ 11'de map::at
var (kim bilir?).
anahtarı yok eğer bir özel durum, find
döner aMap.end()
eleman mevcut değildir ve eğer herhangi bir değer olup olmadığını operator[]
karşılık gelen anahtar için yeni bir değer değer başlatır. Şu anda bir haritanın bir parçası değildir indeksleme operatörü []
kullanarak bir anahtar erişiyorsanız
28
o zaman otomatik için bir anahtar ekler. Bu büyük bir uyarı ve bunu dikkate al. Bu nedenle, ayar için dizin oluşturma işleci []
ve arama için .find()
/.at()
kullanmayı tercih ediyorum.
[]
fazla .at()
kullanmanın bir başka avantajı []
olmaz ise bu bir const std::map
çalışabilir olduğu bir gerçektir.
İlgili konular
- 1. akış arasındaki fark() harita() ve stream.map ({}) 8
- 2. C++ - (*) arasındaki fark. ve ->?
- 3. C ve C++ arasındaki bağlantıdaki fark?
- 4. C# döküm arasındaki fark?
- 5. Python Çoklu işlem: Harita ve imap arasındaki fark nedir?
- 6. Harita ile her biri arasındaki fark nedir ve toplanır?
- 7. C#, .NET ve CLI arasındaki fark nedir?
- 8. Decimal.Round ve Math.Round arasındaki fark
- 9. Yönetilen C++ ile C++ arasındaki fark
- 10. typedef arasındaki fark ve tanımlamak
- 11. Ondalık ve ondalık arasındaki fark
- 12. İşlem ve TransactionScope Arasındaki Fark
- 13. HttpCookie ve Çerez arasındaki fark?
- 14. arasındaki fark?
- 15. & (ampersand) ve && veya | arasındaki fark (boru) ve || Amaç-C?
- 16. XeLaTeX ve pdfLaTeX arasındaki fark
- 17. javax.sql ve java.sql arasındaki fark?
- 18. netTcpContextBinding ve netTcpBinding arasındaki fark
- 19. Sürücü ve sağlayıcı arasındaki fark
- 20. Python'da {} ve [] arasındaki fark nedir?
- 21. Dize [] ve [dize] arasındaki fark
- 22. Redis ve kafka arasındaki fark
- 23. mapM ve forM arasındaki fark
- 24. ASCIIEncoding ve Encoding Arasındaki Fark
- 25. NSLog ve DLog arasındaki fark
- 26. jsRender ve jsViews arasındaki fark
- 27. UNIX'teki $ @ ve $ * arasındaki fark nedir?
- 28. java.util.Scanner ve java.util.Scanner arasındaki fark. *
- 29. ServiceProcessInstaller ve ServiceInstaller arasındaki fark
- 30. string.h ve strings.h arasındaki fark
[Tabii ki] (http://en.cppreference.com/w/cpp/container/map/at) ... –
@KerrekSB (C++ 11'den beri) bunu bilmiyordu. –