c++cconstantsarray-initialization

How to create an array when the size is a variable not a constant?


I've got a method that receives a variable int. That variable constitutes an array size (please, don't offer me a vector). Thus, I need to init a const int inside my method to initialize an array of specific size. Question: how do I do that?

void foo(int variable_int){
    int a[variable_int] = {0}; //error
}

Solution

  • int *a = new int[variable_int];
    

    Remember to delete[] the allocated space when you are done with it!