问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c++中静态成员和静态方法是什么意思?简要举例说明用处。

发布网友 发布时间:2022-05-20 19:53

我来回答

3个回答

热心网友 时间:2023-11-19 08:52

*** 我主要说的关键是“静态成员是属于类的”,而不属于任何对象所有 ***

在此对一些内容作详细的解释,其中小部分与楼上有点相同,但我说的关键处,与它不同,并修改一些说法。

首先,我在这里把楼主的“静态成员”和“静态方法”,分别对应下面的“静态数据成员”和“静态成员函数”。并把他们都成为静态成员。(它们实际是同一个概念的不同说法。)

“静态成员是属于类的,由该类的全体对象共享”------就是对是这样的

“无论你建立了多少个该类的对象,静态成员在内存上只有一个”------我要说的是,无论你建多少个该类的对象,所有成员函数在内存上也只有一个

为什么说静态成员是属于类的呢??

因为,
我们假设 class A{public: static int i;void display(){} };并定义对象 A abc;
一般的引用类的成员的方法是通过对象去引用:abc.i; abc.display;。
但可以通过类 A::i来引用i , 通过A::display()来引用display(). 《这里是要特别要注意的!!!》
而普通成员就不行,
虽然不管是静态成员还是普通成员,在内存里只有一个副本。但从这个角度去看,静态成员是属于类的。

对于静态成员函数,我们也许还分不清楚这个问题,但是,
特别是对于静态数据成员,我们就很容易理解了。
如果不定义为静态数据成员,那么每个对象都分别有一个i的副本(拷贝)。但定义为静态数据成员之后,所有的对象共享有一个i的副本,就是说i在内存里就一个副本。
那么,不同对象引用i,对i的改变的话, 其他对象中i的值也会被改变,而且所有对象的值都是相同的。
在引用静态数据成员时,可以不通过对象而通过类,静态数据成员在内存只有一个,而且可以通过类来引用。这是静态数据成员属于类,很明显的。

这是实现不同对象间数据共享的一种方法。

静态成员函数,与静态数据成员类似。就不说,需要注意的是,它在内存里始终只有一个副本(普通成员函数也一样)。

关于静态成员的生命周期,在此就不多说了。

热心网友 时间:2023-11-19 08:53

一两句话说不清, 看书去吧, 去吧, 去吧.

热心网友 时间:2023-11-19 08:53

简单说,静态成员是属于类的,由该类的全体对象共享,无论你建立了多少个该类的对象,静态成员在内存上只有一个;非静态类成员是属于类对象的,每个对象一个拷贝。静态方法与此类似。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
说课包括哪些方面 说课内容包括()。 如何在手机百度上删除对话记录? 结核病是什么样的疾病? 曹丕17岁得了肺痨,明知自己命不长久,还要强争王位,是不是很自私呢?_百... 古代小说常出现的病名 急求一篇"生活小窍门"(500字)的作文 至今最有什么小妙招 健康的戒烟方法 笔记本电池锁死是什么原因引起的? c语言初学者,不明白静态变量与动态变量,有老师能举例子详细说明吗? 类的静态数据成员如何被声明和初始化(写一个简单例子说明) 谢昊臻这个名字含义 帮忙给孩子想个好名字 2012年8月26日 21:45分出生 男孩 王姓 谢谢! 2012年4月5日10点25分生的男孩五行缺啥,父亲姓史,取啥名字好 请大家帮我看看我孩子叫杨昊臻怎么样? 臻臻是男孩还是女孩? 合肥新房摇号细则公布:三成房源用于刚需选房 2022年合肥最新买房、限购、税费、学区等政策汇总! 王者荣耀新版操作模式怎么设置 优酷会员激活码 没登录账号 直接在上面的会员卡激活给激活了,之后别 优酷激活码。 毛线织多种宝宝鞋图解 强制执行会封微信吗 微信零钱强制执行什么意思 为什么微信被法院强制执行划扣 强制执行为什么只冻结微信 装修工人会不会远程监控到自己家的探头? 新房交付装修,想装个摄像头用于家庭安防监控,有这样操作过的人吗? 装修工地摄像头怎么样?不用宽带和WiFi VB编程里的动态变量和静态变量,分别是什么意思,最好能举例,谢谢! C语言中,全局静态变量是个什么东西?求解释举例 c++类中静态成员函数怎么修改静态成员的值 望举例 静态变量和全局变量有什么不同?如下两个例子 类内定义静态变量与类外定义静态全局变量的区别,最好举个例子。网上有的答案不是很明白 和平宣传语 为“和平”为主题 写2句宣传标语 "战争与和平公"公益广告语 英语被动语态系列讲解之三 江西小学教招英语面试如何备考? 江西教招英语面试83分 高吗? 江西教招面试小学英语试讲怎么讲? 英语教师面试应注意哪些问题 你好,火焰蓝杀青,龚俊又一新剧官宣,搭档高颜值女主,你期待吗? 《你好,火焰蓝》口碑不达预期,这部剧会给龚俊的事业发展带来哪些影响? 龚俊晒《沉睡花园》杀青照是什么样的? 哈弗h6 iphone怎么用ipod模式 《我要逆风去》龚俊杀青,你对这个明星了解多少? 《我要逆风去》龚俊杀青,格子大衣搭围巾干净帅气,你最喜欢他哪部剧? iPhone5可以用数据线连接车上输出音频,车上显示iPod音乐,但是iphone6能不能用usb