C++ Expression doit avoir la valeur de la constante

#include <iomanip>
#include <iostream>
#include <Windows.h>
using namespace std;

template <class T>
void sort(int n, T a[]){
       for(i=0;i<n-1;i++){
          for(j=i;j<n;j++){
               if(a[i] > a[j]){
               temp=a[i];
               a[i]=a[j];
               a[j]=temp;
               }
           }
     }
}


void main(){
    int size;
    cout<<" Please input the amount of numbers you would like to sort"<<endl;
    cin>>size;
    int Amta[size];
    for(int i=0; i<size; i++){
        cout<<"Please enter the "<<size+1<< "number";
        cin>>Amta[i];
    }
    Sleep(100000);
}

Je suis en train d'essayer d'obtenir le nombre de chiffres que l'utilisateur souhaite l'entrée de l'utilisateur et de les stocker dans la variable de taille.

Mais quand j'initialise array Amta[size] - je obtenir la suite des erreurs de compilation:

Expression doit avoir la valeur de la constante

et

C2057: attendu constante de l'expression" erreur de compilation.

InformationsquelleAutor G V | 2013-10-24