Since you know at compile time the array size, why don't you allocate it on the stack?
#include #include using namespace std;
constexpr size_t SIZE = 3;
class Vector
{
array x{};
public:
Vector (const array & a)
{
for (size_t n=0; n x{1,2,3};
array y{6,3,9};
Vector v1{x};
Vector v2{y};
cout << "v1 " << v1 << endl;
cout << "v2 " << v2 << endl;
cout << "v1*v2 = " << (v1*v2) << endl;
}