"Осваиваю" тут нововведение с11++, и захотелось высказаться .
Итак мы имеем теперь крутую хрень :
struct sss
{
DWORD i1;
QWORD i2;
char Name[222];
};
vector <sss> my_arr_of_structs;
for ( auto item: my_arr_of_structs ){
item.i1 = 0;
item.i2 = 3;
memcpy(item.Name,"222",222); // не суть тут пример
}
Красиво. Да. Удобно? Да. ... Вроде бы.....
Вроде бы да — Но вот только это auto item, это "копия" элемента. И что бы добраться до производительности и красоты простого for
for ( size_t i=0; i<my_arr_of_structs.size(); i++){
my_arr_of_structs[i].i1 =0;
...
}
еше очень далеко.
Спрашивается а в чем прикол заставлять делать криво. Что не ужели нельзя было сделать так что бы если тебе надо копию элемента массива то нужно было что-то сделать, а не наоборот?
То есть логика моего "возмущения" такая : Для чего for по массиву? Для того чтобы перебрать элементы и что-то с ними сделать. Но не для того чтобы копировать элемент ( он может быть и 100 кил ) и на него посмотреть.
==
Почему возмущение — ?

Да кода написал много, точнее переделал из обычных for на вот эти auto.
Ж)