При использовании Visual Studio я могу написать обход контейнера, по крайней мере, следующими тремя способами.Какой способ предпочтительнее?Предполагается:
vector<CString> strings1;
Метод 1 (с использованием алгоритма for_each
с лямбда-выражением:
for_each(strings1.begin(), strings1.end(), [](CString s){
_tprintf(_T("%s"), s);
}
Метод 2 (с использованием for each, in
, для Microsoft):
for each(auto s in strings1)
{
_tprintf(_T("%s"), s);
}
Метод 3 (обработать вектор с помощью синтаксиса массива):
for (int i=0; i<v.size(); ++i)
{
_tprintf(_T("%s"), v[i]);
}
Я знаю, что метод 2 не является переносимым, но мне не важно быть переносимым. Это нужно только для работы вОкна.