VLA
Скажу сразу, очень многие даже не знают о таком термине.
VLA - это попытка упросить жизнь программисту, что бы он мог создавать массивы "интуитивным способом" (я специально взял в кавычки). Поддерживается не всеми компиляторами.
Когда мы пишем int a[x]; некоторые компиляторы могут это компилировать, даже если x только что введённая переменная. Создание происходит НЕ В КУЧЕ а на СТЕКЕ с использованием обычного alloca как создание обычного массива через указатели и new. Работает примерно также, но прячет все детали за "магией"компилятора. (грубо говоря на стеке рядом хранит данные что он создал VLA на определённое количество элементов)
При наличии
std::vectorсмысла вVLAдля С++ нет никакого.