为什么不能将静态类变量分配给堆栈

Why can a static class variable not be allocated to the stack?

本文关键字:分配 堆栈 类变量 静态类 不能 静态 为什么      更新时间:2023-10-16

>通常,在函数中声明的局部变量是在堆栈上分配的,而不是在堆上分配的,但如果变量是静态的,则情况并非如此。为什么不能在 上分配静态类变量堆栈?

因为那样它就不是静态的了。你的问题在术语上体现了矛盾。

堆栈上分配的变量会自动删除。您不希望删除静态变量。

局部静态变量的生命周期是整个程序,但堆栈被所有函数在多个函数调用中使用、重用和重用。因此,静态局部变量不能与其他局部变量一起存储在堆栈中。