00问答网
所有问题
C++中 类的静态成员变量怎么时候被创建起来(即什么时候分配的内存空间)?生命周期为?
在一个进程中用这个类实例化的对象都共用这一个静态成员变量吗?
举报该问题
推荐答案 2013-09-29
静态成员变量在程序启动时被分配,在程序结束时被释放,其生命周期为程序的生命周期。基于这个类的所有对象只有一个静态成员变量的拷贝。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://00.wendadaohang.com/zd/DZIrr0I000jI0BTDnDI.html
其他回答
第1个回答 推荐于2018-05-15
相当于
全局变量
,在声明类对象之前创建。是的,所有的此类对象共用此一个静态成员变量。
并且在类的外面进行定义。
#include<iostream>
using namespace std;
class m_clock
{
public:
static int s;
private:
int h,m;
};
int m_clock::s=9;
int main()
{
cout<< m_clock::s<<endl;
return 0;
}
本回答被网友采纳
第2个回答 2013-09-29
类的实例化对象是共用这个类的静态成员变量的
第3个回答 2018-06-19
除了整型可以在类内初始化,其他的必须在类外。
相似回答
c++类
中 各种
成员的生命周期?
答:
静态变量的生命周期是整个程序的生命周期。析构函数析构的是动态申请的内存。
而类中的成员变量是在类的对象声明时创建
,在对象生存期结束后截止。
C++
类库
中静态
函数
什么时候
定义、另外类
中的成员变量
是保存在堆中还是...
答:
1、静态方法和静态变量在编译阶段分配好的,动态方法和动态变量是在运行阶段才分配内存的
,就这点区别。2、成员变量保存在堆(数据段)内。只有函数的参数才保存在栈里面,因为每次调用函数都需要逐个数参数(进栈和出栈)
C++ 中static
和final的区别是
什么
答:
static 是静态变量,
它在编译时系统就分配内存,程序结束时才释放
。1、在类中,用static声明的成员变量为静态成员变量,它为该类的公用变量,在类加载的时候被创建并初始化(只被创建初始化一次),对于该类的所有对象来说,staitic成员变量只有一份。2、用static声明的方法为静态方法,在调用该方法时,...
C++中
,
变量
只有运行到需要调用执行的步骤才会
分配空间?
还是说运行的...
答:
这个得看你的变量作用域是什么,如果是全局
变量(
比如说 main 函数里面的变量就是全局
变量)
,它的生存周期是程序开始到程序结束,程序一开始就会给它
分配空间
,如果是局部变量(比如说你自己定义的函数里面的变量)就是用到的时候才会分配空间。
大家正在搜
静态成员变量什么时候初始化
成员变量和静态变量的区别
类静态成员变量
静态成员变量的应用
java静态成员变量
静态函数访问成员变量
java静态成员变量初始化
静态方法不能访问非静态变量
全局变量和局部变量的区别
相关问题
C++里静态数据成员是在什么时候被分配空间和初始化的?又是在...
C++中对象的内存空间是在什么时候被分配的
C++局部静态变量在什么时候分配内存和初始化
C++静态数据成员是在编译时分配空间,那普通数据成员是在什么...
C++局部静态变量的内存什么时候创建的
c++模板类中的静态成员变量什么时候会被初始化,如果想要指定...
C++是在什么时候给变量分配的内存
c++ 变量的生命周期和内存的分配释放