Обычно локальная переменная, объявленная в функции, выделяется в стеке, а не в куче, но это не так, если переменная является статической. Почему переменная статического класса не может быть выделена в стеке?
Время жизни локальной статической переменной - это вся программа, но стек используется, повторно используется и повторно используется по нескольким вызовам функций всеми функциями. Поэтому статические локальные переменные не могут быть сохранены в стеке вместе с другими локальными переменными.
Потому что тогда это не было бы статичным. Ваш вопрос воплощает противоречие в терминах.
Переменные, выделенные в стек, автоматически удаляются. Вы не хотите удалять статическую переменную.