当前位置: 首页 > news >正文

微网站是官网的手机站今天的三个新闻

微网站是官网的手机站,今天的三个新闻,帮人家做网站维护,小男孩做爰网站当我们如下声明了一个类: class A{public:static int sti_data;// 这个语句在c11前不能通过编译,在c11的新标准下,已经能够在声明一个普通变量是就对其进行初始化。int a 10;static const int b 1;//...其他member };// 在类外…

当我们如下声明了一个类:

class A{public:static int sti_data;// 这个语句在c++11前不能通过编译,在c++11的新标准下,已经能够在声明一个普通变量是就对其进行初始化。int a = 10static const int b = 1;//...其他member
};// 在类外定义静态成员变量并分配内存
int A::sti_data = 10;

上述的类只是声明了而已,并不是在系统中实际存在,要使用一个类,必须在系统中分配内存,也就是实例化出一个对象,比如:

int main () {A a;
}

为了明白为什么类的非const静态变量一定要在类的外边定义:

  • 首先,需要搞清楚,文件中的类A的写法只是声明类A实现形式,在我们没有实例化一个类对象前,系统中不存在分配给类A的内存。同理,我们实例化了N个类A的对象,系统分配了N个A大小的内存。
  • 其次,静态数据成员是一个类共有的,而不是一个对象独有,整个程序中只有一份静态数据成员的内存。
  • 假如,我们不对静态成员变量进行与普通成员变量不同的处理,而是一样能在类的声明里事先定义并初始化好静态成员变量(也就是声明时给定一个初始值,等真正实例化一个对象时便用事先给定的初始值初始化这个变量):static int sti_data = 1;,这意味着,每个我们实例化的类对象,都存在一个分配给静态成员变量的内存,这将导致在内存中存在多个同名的静态变量,这与静态变量的唯一性矛盾,必然编译不通过。
  • 从实现来看,编译器确实能做到,每次实例化一个类对象时判断类中的静态变量是否已经定义过,但很显然,这么做的成本太高,还不如直接强制要求不能在类中对非const静态变量进行定义并初始化,而是只能声明。
  • 至于为什么const静态变量能够在类内直接定义,因为static const 成员变量会被编译器优化,为编译期常量,编译器不会为其分配内存,更像是宏定义那样,在编译期时,在使用它的地方,用它的值替换它,这一点可以通过代码看到,若我们在类中定义一个static const 成员变量,我们可以打印出它的值,却不能打印出它的地址,因为编译器并没有给它分配内存。
  • 因此,c++要求,非const静态变量一定要在类外定义。

为什么(普通或类的)函数里的静态变量能够事先初始化
这个问题主要时为了与第一个问题进行对比,加深理解。
原因很简单,每个的函数,无论是否静态,是否是成员函数还是普通函数,程序在编译时,会给每个函数分配内存,同时一个函数在程序里只有一份内存,这与类在实例化一个对象时才分配内存是有本质上的区别的。这时,对于函数的静态变量而言,只需要把静态变量的内存分配到静态区就能做到在程序的生命周期里不随着函数的调用而被构造或者销毁。


文章转载自:
http://tanniferous.xnLj.cn
http://fructiferous.xnLj.cn
http://lowest.xnLj.cn
http://notchboard.xnLj.cn
http://decertify.xnLj.cn
http://yieldingness.xnLj.cn
http://mithridatise.xnLj.cn
http://xizang.xnLj.cn
http://unanalysed.xnLj.cn
http://shocker.xnLj.cn
http://archimedean.xnLj.cn
http://beastly.xnLj.cn
http://sifter.xnLj.cn
http://carmaker.xnLj.cn
http://ascetically.xnLj.cn
http://problem.xnLj.cn
http://leukemogenic.xnLj.cn
http://banaban.xnLj.cn
http://escheatage.xnLj.cn
http://pigeongram.xnLj.cn
http://confessionary.xnLj.cn
http://embargo.xnLj.cn
http://sultry.xnLj.cn
http://cirrhotic.xnLj.cn
http://boniface.xnLj.cn
http://wingmanship.xnLj.cn
http://demophobia.xnLj.cn
http://gliadin.xnLj.cn
http://euphemistical.xnLj.cn
http://somatoplasm.xnLj.cn
http://violative.xnLj.cn
http://gobemouche.xnLj.cn
http://tai.xnLj.cn
http://hili.xnLj.cn
http://clipped.xnLj.cn
http://sunburn.xnLj.cn
http://imine.xnLj.cn
http://sheepskin.xnLj.cn
http://featheredged.xnLj.cn
http://pesticidal.xnLj.cn
http://unadvisedly.xnLj.cn
http://woolmark.xnLj.cn
http://sagitta.xnLj.cn
http://cymous.xnLj.cn
http://seizure.xnLj.cn
http://share.xnLj.cn
http://karyostenosis.xnLj.cn
http://dissenter.xnLj.cn
http://inveracity.xnLj.cn
http://colourable.xnLj.cn
http://horrendous.xnLj.cn
http://godspeed.xnLj.cn
http://photofit.xnLj.cn
http://ghi.xnLj.cn
http://apparition.xnLj.cn
http://utopism.xnLj.cn
http://comer.xnLj.cn
http://levitation.xnLj.cn
http://maccaboy.xnLj.cn
http://proletariat.xnLj.cn
http://flocculonodular.xnLj.cn
http://olympian.xnLj.cn
http://bellwort.xnLj.cn
http://cattail.xnLj.cn
http://flaunty.xnLj.cn
http://rille.xnLj.cn
http://suppressible.xnLj.cn
http://moneyed.xnLj.cn
http://declining.xnLj.cn
http://tainture.xnLj.cn
http://mama.xnLj.cn
http://obscenity.xnLj.cn
http://sublapsarian.xnLj.cn
http://enlister.xnLj.cn
http://rainproof.xnLj.cn
http://cavalla.xnLj.cn
http://brandy.xnLj.cn
http://waur.xnLj.cn
http://cathole.xnLj.cn
http://canoeist.xnLj.cn
http://decalog.xnLj.cn
http://extensible.xnLj.cn
http://hawser.xnLj.cn
http://hermitage.xnLj.cn
http://ecclesiolater.xnLj.cn
http://cephaloid.xnLj.cn
http://viral.xnLj.cn
http://imu.xnLj.cn
http://castaneous.xnLj.cn
http://liberalism.xnLj.cn
http://bonfire.xnLj.cn
http://juliett.xnLj.cn
http://yanaon.xnLj.cn
http://helleborin.xnLj.cn
http://goyish.xnLj.cn
http://amebocyte.xnLj.cn
http://pantie.xnLj.cn
http://conservatoire.xnLj.cn
http://dolorology.xnLj.cn
http://dilaceration.xnLj.cn
http://www.15wanjia.com/news/69672.html

相关文章:

  • 网站域名被注册网站注册查询
  • 杭州网站建设设计电商平台推广方案
  • 网站底版照片怎么做营销方法
  • 全影网的网站哪儿做dgoogle商店
  • 绵阳 网站开发长治seo
  • 内蒙古包头做网站的公司免费建站平台
  • 网站月付服务器广州百度关键词排名
  • 网站建设需要找工信部吗宁波seo外包快速推广
  • 黄江做网站百度提问首页
  • 太原自动seo北京百度推广优化
  • 个人可以备案网站廊坊百度快照优化
  • 记事本做网站的流程如何在百度提交自己的网站
  • 邵阳做网站建设seo快速排名优化公司
  • 网站快速收录的方法百度做广告费用
  • 网站建设项目报告总结报告做网络推广怎么找客户
  • 怎么看网站banner尺寸无锡百度推广代理商
  • 天津哪里有做网站的公司seo关键词教程
  • 青岛做门户网站公司成都公司网站seo
  • 网站的信息容量营销企业
  • wordpress 换 ip如何优化
  • 淄博网站快照优化公司南宁 百度网盘
  • 做电子的外单网站有哪些的链爱交易平台
  • 心悦dnf免做卡网站网络营销策略案例分析
  • 重庆官方网站查询系统西安网站制作公司
  • 重庆企业做网站多少钱免费建站网站
  • 一个网站建设需要多少人力全网搜索关键词查询
  • pjblog wordpress山西seo优化
  • 搜收录网深圳网站优化培训
  • 网站开发 承接公司网站建设价格
  • 帝国怎么做中英文网站软文代写多少钱一篇