template<class T, int N> int array_length(T(&arr)[N]) { return N; } int main() { const int arr[]={2, 4, 5, 6, 8, 4, 7}; const std::vector<const int> vec(arr, arr+array_length(arr));