#pragma once template void iter(T *arr, int len, void(*func)(T &)) { for (int i = 0; i< len; i++) { func(arr[i]); } } template void iter(const T *arr, int len, void(*func)(const T &)) { for (int i = 0; i< len; i++) { func(arr[i]); } }