#include <iostream>
using namespace std;
int* Reverse(int a[],int Len)
{
int* temp= new int[Len];
for(int i=Len-1;i>=0;i--)
{
temp[Len-i-1]=a[i];
}
return temp;
}
int main()
{
int nums[]={1,2,3,4,5,6,7,8,9,10};
int *z = Reverse(nums,10);
for(int i=0;i<10;i++)
cout << z[i] << ",";
system("pause");
return 0;
}
// C++11 Initializer list
std::vector<int> numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
std::vector<int> reverse_numbers;
std::reverse_copy(numbers.begin(), numbers.end(), reverse_numbers.begin());
// Anonymous functions
std::for_each(numbers.begin(), numbers.end(), [](int x) { std::cout << x << std::endl; });
std::for_each(reverse_numbers.begin(), reverse_numbers.end(), [](int x) { std::cout << x << std::endl; });
template<class T>
T* reverse(T *arr, int n)
{
for(int i = 0; i < n / 2; i++)
{
T temp = arr[i];
arr[i] = arr[n - i - 1];
arr[n - i - 1] = temp;
}
return arr;
}