-6
哪種說法是在容器循環迭代更快,優化:迭代與自動ref或迭代器
for (const auto& Item : s_MyTable)
或
for (std::unordered_map<int,std::string>::const_iterator it = s_myTable.cbegin(); it != s_myTable.cend(); ++it)
哪種說法是在容器循環迭代更快,優化:迭代與自動ref或迭代器
for (const auto& Item : s_MyTable)
或
for (std::unordered_map<int,std::string>::const_iterator it = s_myTable.cbegin(); it != s_myTable.cend(); ++it)
總之,無論是「快」。他們以同樣的方式做同樣的事情。
說得更一般,如果你真的想知道,在你的系統上測量它。
儘可能地說一般,儘量不要關心這樣的事情。
這種問題的標準評論:你是否測過它? –
取決於你在循環中如何使用'it'。但是,如果循環是邏輯等價的,那麼現代編譯器很可能會創建相同的輸出。 –
我使用項目將它們存儲在一個向量中。 – Aminos