即时通讯尝试使用STL查找算法(和min_element算法)找到向量中最小值的位置,但不是返回该位置,而是仅给出该值。例如,如果最小值是它,位置将被返回为8等。我在这里做错了什么? int value = *min_element(v2.begin(), v2.end());
cout << "min value at position " << *find(v2.begin(), v2.en
我只是最近才发现,Visual C++ 2008(也许还有更早的版本?)支持stl lists et al上的for each语法来促进迭代。 例如: list<Object> myList;
for each (Object o in myList)
{
o.foo();
}
我很高兴地发现它,但我很担心可移植性可怕的一天,当有人决定我需要能够编译我的代码中说,海湾合作委员
假设我有一个的hash_map和像 // i is an iterator
i = hash_map.erase(i)
一个代码,但GCC的STL不擦除返回迭代器,而是一个空白。现在就像是 hash_map.erase(i++)
安全代码(即不坏的迭代器或是否有任何其他意外或不愉快的事情)?请注意这是一个hash_map。