need to redistribute more memory,
// and reallocating memory is usually a performance-intensive operation...array arr= {1,4,3,2};
//int len = 4;
//std::array arr = {1,2,3,4}; // illegal..., size of array must be constexpr
// C style parameter passing
// foo(arr, arr.size());...// illegal, cannot convert implicitly
foo(&arr[0], arr.size());
foo(arr.data(), arr.size());