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

c++为什么要有静态函数

发布网友 发布时间:2022-10-13 21:19

我来回答

3个回答

热心网友 时间:2023-11-13 19:42

因为静态函数始终只有一个实例

C++类中的静态成员有一个非常好的功能,那就是无论类定义了多少个对象,这些对象始终都共同使用这一个静态成员
例如: class A{
static int num;
A(){num++} }
int A::num=0;
就会有如下效果: A a,b,c,d; cout<<a.num<<","<<b.num<<","<<c.num<<","<<d.num 输出 4,4,4,4
可以看出,在每个对象中的num成员都只有一个副本。在内存中也是如此,初始化abcd时并没有分配新的内存。
在使用静态成员的过程中还有以下几点注意:
1.num不可以在类中初始化,更不可以在构造函数或构造函数初始化表中初始化。必须在类外初始化。方法是:
int A::num=0; 此时不能有对象被定义,也就是说县定义num才可以,定义a b等
2.如果num为public成员,那么任何时候都可以这样调用它 A::num 当然 a.num也可以
对于静态成员函数,它的特点和静态数据成员相似但也有不同:
class A{
int num;
A(){num++}
static int p(){return num; } }//wrong
1.可以在类中定义。这一点与静态数据成员不同
2.若p()为public成员,则可以这样调用A::p()。这一点与静态数据成员相同。
3.静态成员函数不属于任何一个特定的对象,所以不存在隐含的this指针。如果要在函数中访问某个特定的对象的成员,必须结合使用操作符“.”或“->”来显示地制定所属对象。
4上面所给的程序是错误的因为num不属于所有的对象。如果num是静态的则可以。
静态成员函数常用来操作静态数据成员。

热心网友 时间:2023-11-13 19:42

类的设计者是想把这些函数与整个类在概念上关联起来。
当然它也可以与静态数据成员结合使用来产生一些特殊的技巧,详见相关书籍。

参考资料:THINKING IN C++

热心网友 时间:2023-11-13 19:43

存在即合理
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
少儿学什么舞蹈 青年学什么舞蹈好 成年人学什么舞蹈 福州企业最低工资标准 2013年厦门的底薪是多少 生产要素的需求有哪些性质 生产要素的需求有何特点? 什么是生产要素需求 微观经济学要素需求什么是条件要素需求?它和要素需求有什么不同?_百度... 养宠物的人遵守规则,是不是就能和别人平安相处呢? C语言中静态函数的用途求教! 十二生肖飞度是那个生肖 vivo手机软件图标大小怎么调 临沂河东相么至朝阳街道公交车 家住临沂相公镇到临沂三十九中怎么做公交几路车 从望江路口到大石怎么坐公交车,最快需要多久 南安邱店到内坑要搭几路车?线路是什么? 从朱陈去河东车管所坐那哪路公交车? 三更四方闻天鸡一夜飞度是什么生肖 想定制亲子套装雨衣雨裤,有哪里可以定制的? 目前, 电子支付存在的主要问题是( )&#92;A、安全 B、方便 C 、高效 D、经济 五体投地水陆栖,一夜飞度镜湖月打一肖 求推荐一本书,教人处理事情的那种?(一个问题,多种回答方式的那种)谢谢 《史上最简单的问题解决手册高效能人士做决定的51个思考模型》epub下载在线阅读,求百度网盘云资源 六年级学生读《鲁兵逊漂流记》有感 六年级读《鲁滨孙漂流记》有感 30岁毛孔粗大怎么修复 大家好!我叫叶子,女 我想起个好听的英文名 请大家帮下忙好吗?? 我希望英文名字开头或结尾是ye 中文名单名ye(四声)发音,想找一个女英文名 10000KB流量,只是挂挂QQ之类的,大概可以用多久,多少天 ,有没有经历 c语言中用静态函数的好处 5000块钱一分五的利析一年多少钱 五千块借款一年利息一分五多少 欲钱去看一夜飞度的动物 解 女冠子·四月十七赏析及译文注释 手机很耗电是什么原因,该怎么办呢 有人知道汇华理财纯债的投资范围吗? 一夜飞渡镜月湖是什么动物? 怎么用玉米淀粉勾芡? 假发里边都有哪几种发型?比如yaki,还有哪几种?汉语意思又是什么呢?谢谢! 点菜宝登陆不了怎么办? 从点菜宝上登不到工号 三极管,二极管和稳压管怎样用万用表判断好坏 《世说新语》以贵骄人的注释和译文是什么? 梦见把自己的头骨放在火上烧 彩馨这个名字好听吗? 常见园林植物配置方式_园林植物配置方式 飞利浦ac4076空气净化器滤网多久更换 国宝怎么画 许嵩如果当时歌词 许嵩如果当时歌曲简介