int k;cin>>k;想把k弄到int a[k]中怎么办不会报错

int k;cin>>k;想把k弄到int a[k]中怎么不会报错
为啥老是说脚标不能为变量

#include<vector>
#include <iostream>
using namespace std;
int main(){
  int n;
  cin>>n;
 vector<int> a(n,0);
  a[0]=1;
 a[1]=2;
}

用vectora(k,0)