Вы можете использовать такой подход, как:
#include<array>
using namespace std;
template <size_t N>
class test
{
void function(const array<int, N> & myarr)
{
/* My code */
}
};
Но имейте в виду, что std::array
не является динамическим c массивом. Вы должны знать размеры во время компиляции.
Если вы узнаете размеры позже во время выполнения вашей программы, вам следует рассмотреть возможность использования std::vector
вместо этого:
#include<vector>
using namespace std;
class test
{
void function(const vector<int> & myvec)
{
/* My code */
}
};
В этом варианте вам вообще не нужно передавать размер.