Я пытаюсь использовать std::for_each()
вместо обычного цикла for
в качестве практики, но я не могу передать функцию-член for_each()
.
Вот код:
class Class
{
public :
void func (int a)
{
cout << a * 3 << " ";
}
}ob1;
int main()
{
int arr[5] = { 1, 5, 2, 4, 3 };
cout << "Multiple of 3 of elements are : ";
for_each(arr, arr + 5, ob1);
}
Работает, только если эта функция-член void operator() (int a)
. Я не знаю, почему любая другая функция-член не может быть передана в for_each()
!