Начало и конец в C++
Цикл for (int num : vec) сам берет начало
и конец набора. Начало - указатель на первый элемент,
конец - указатель на позицию за последним. Свой класс
подключают к такому циклу, если он отдает эти два
указателя как int*.
Запишем класс Triplet с тремя целыми:
class Triplet {
public:
int data[3] = {1, 2, 3};
int* begin() {
return data;
}
int* end() {
return data + 3;
}
};
Сейчас создадим объект и обойдем его циклом:
int main() {
Triplet pack;
int sum = 0;
for (int item : pack) {
sum += item;
}
std::cout << sum << "\n";
return 0;
}
Сделайте класс Row с массивом из трех
целых 2, 4, 6. Добавьте
begin и end. Обойдите объект
range-for и выведите сумму элементов.
Для Row с тремя единицами выведите количество
шагов цикла range-for, если считать его в переменной.