问题描述
这是测试我的问题的代码。
#include <iostream>
#include <stack>
using namespace std;
int main(){
int num;
int Array[1];
stack<int> Stack;
cout << "Int size " << sizeof(num) <<endl; // Output: Int size 4
cout << "Array size " << sizeof(num) <<endl; // Output: Array size 4
cout << "Stack size " << sizeof(Stack) <<endl; // Output: Stack size 80
return 0;
}
我正在尝试了解内存空间分配。通常 int 内存大小为 4 个字节。但是,当我在 Stack
中初始化 int 数据类型的 std::stack
时,Stack
大小为 80 字节。
应该是 4 吗?为什么 std::stack
需要 80 个字节?或者 80 字节大小的堆栈内部实际上是什么?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)