Mik*_*ron 3 c++ stl visual-studio-2010 c++11
使用Visual Studio时,我至少可以通过以下三种方式编写容器遍历.哪种方式更可取?假设:
vector<CString> strings1;
Run Code Online (Sandbox Code Playgroud)
方法1(使用for_each带有lambda 的算法:
for_each(strings1.begin(), strings1.end(), [](CString s){
_tprintf(_T("%s"), s);
}
Run Code Online (Sandbox Code Playgroud)
方法2(使用for each, in,特定于microsoft):
for each(auto s in strings1)
{
_tprintf(_T("%s"), s);
}
Run Code Online (Sandbox Code Playgroud)
方法3(使用数组语法处理向量):
for (int i=0; i<v.size(); ++i)
{
_tprintf(_T("%s"), v[i]);
}
Run Code Online (Sandbox Code Playgroud)
我知道方法2不可移植,但我不在乎便携.这只需要在Windows中工作.