社区
C++ 语言
帖子详情
请问方法中的静态变量在哪里存储
complexity
2004-05-13 09:49:40
有一个对象的一个方法里面声明了一个静态变量
然后取出这个变量的地址
我想知道,这个变量的内存在哪里分配?
这个类的不同对象中的这个变量地址相同么?
谢谢!
...全文
229
10
打赏
收藏
请问方法中的静态变量在哪里存储
有一个对象的一个方法里面声明了一个静态变量 然后取出这个变量的地址 我想知道,这个变量的内存在哪里分配? 这个类的不同对象中的这个变量地址相同么? 谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lj197912
2004-05-13
打赏
举报
回复
类的静态成员就是为了类对象之间数据共享用的,他不属于任何一个对象。访问它的时候也不需要通过对象,通过类名::。。
oxoxox
2004-05-13
打赏
举报
回复
应该是在堆中。地址是相同的,这个地址也是一个全局的,所有对象实例的该方法共享一个地址,也就共享一个共同的值。
complexity
2004-05-13
打赏
举报
回复
谢谢各位!!
没想到这么快就得到各位高手的答复
再次感谢!
xiyi168
2004-05-13
打赏
举报
回复
静态成员的内存都统一放在静态存储区。
dengchengqiang
2004-05-13
打赏
举报
回复
在钱能的《C++程序设计教程》中说
程序的内存空间分为:代码区,全局数据区,堆区和栈区
在以上测试代码中如果把get()函数改为
void get()
{
static int c;
cout << &c << endl<< c <<endl;
}
可以看到输出时c值为0(自动初始化的值)
而只有全局数据区的变量才会在没有显示初始化的时候得到自动初始化
所以该静态变量放在全局数据区
freefalcon
2004-05-13
打赏
举报
回复
静态变量实际上可以看成是限制了访问权限的全局变量
函数中的局部静态变量在函数首次调用时初始化,以后不再初始化,所以只有一个实例
前面几位都说得很清楚了
dengchengqiang
2004-05-13
打赏
举报
回复
#include<iostream>
using namespace std;
class C
{
public:
void get()
{
static int c;
cout << &c << endl;
}
};
int main()
{
C a, b;
a.get();
b.get();
return 0;
}
测试出地址是一样的
goodname
2004-05-13
打赏
举报
回复
静态变量全局唯一,
与该类的实例无关。
fct0906
2004-05-13
打赏
举报
回复
类的静态成员是不依赖于类的对象实例的,也就是说不管有对少个对象实例,静态的成员永远也只会有一个。
静态成员的内存都统一放在静态存储区。
xyc6838
2004-05-13
打赏
举报
回复
帮你up
java
静态变量
存储
_Java
中
存储
的静态
方法
和
静态变量
在哪里?
静态
方法
(实际上所有
方法
)以及
静态变量
都
存储
在PermGen部分,因为它们是反射数据的一部分(类相关数据,而不是与实例相关的)。需要澄清的最新情况:注意,只有变量及其技术值(原语或引用)
存储
在PermGen空间
中
。如果...
c语言
中
静态
存储
变量,c语言
中
什么是
静态变量
c语言
中
什么是
静态变量
静态变量
是属于静态
存储
方式,但是属于静态
存储
方式的量不一定就是
静态变量
,下面是应届毕业生小编为大家整理的关于c语言
中
静态变量
的介绍,希望可以帮到大家哦。c语言
静态变量
的概念定义...
java静态
方法
存放在哪_Java
中
存储
的静态
方法
和
静态变量
在哪里?
茅侃侃静态
方法
(实际上所有
方法
)以及
静态变量
都
存储
在PermGen部分,因为它们是反射数据的一部分(类相关数据,而不是与实例相关的)。需要澄清的最新情况:注意,只有变量及其技术值(原语或引用)
存储
在PermGen空间
中
。...
java static 变量存在哪_Java
中
的静态
方法
和
静态变量
存储
在哪里?
小编典典静态
方法
(实际上是所有
方法
)以及
静态变量
都
存储
在PermGen堆的部分
中
,因为它们是反射数据(与类相关的数据,而不与实例相关的数据)的一部分。更新说明:请注意,只有变量及其技术值(原始或引用)
存储
在PermGen...
方法
区(Method Area)
存储
的
静态变量
1:
方法
区(Method Area)
存储
的
静态变量
静态变量
又称为类变量,类
中
被...八种基本数据类型(byte、short、int、long、float、double、char、boolean)的
静态变量
会在
方法
区开辟空间,并将对应的值
存储
在
方法
方...
C++ 语言
64,654
社区成员
250,484
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章