Как реализовать функцию foreach внутри класса на C++, который принимает другие функции-члены в качестве параметров?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как реализовать функцию foreach внутри класса на C++, который принимает другие функции-члены в качестве параметров?

Сообщение Anonymous »

Предположим, у нас есть класс, содержащий вектор. В этом классе также есть некоторые функции-члены, которые манипулируют заданными и индексируемыми элементами этого вектора, например, так:

Код: Выделить всё

class Foo
{
std::vector v{ 1, 2, 3, 4 };

void a(int i){ v[i]++; }
void b(int i){ v[i]--; }
}
Теперь мне регулярно приходится вызывать эти функции для каждого элемента, поэтому я реализую еще одну функцию-член, использующую цикл for. Может быть так:

Код: Выделить всё

/* inside Foo */
void for_each_a()
{
for (int i{0}; i

Подробнее здесь: [url]https://stackoverflow.com/questions/79268220/how-to-implement-a-foreach-function-inside-a-class-in-c-that-takes-other-mem[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»