【发布时间】:2018-04-01 13:09:48
【问题描述】:
我了解静态变量分配在数据段中(而不是在堆栈和堆中)。
std::map< std::string, testClass*> TestMap;
static TestMap testMapInstance;
这里的 testMapInstance 是一个动态增长的地图。我们推送通过new(堆)分配的testClass。
编译器如何分配这个静态变量以及在哪里? 这种情况下的内存限制是多少(这张地图可以增长多少)?
【问题讨论】:
-
testClass在堆中分配,它是从TestMap引用的,注意你使用了testClass *。