当前位置:网站首页>static修饰的函数有什么特点(static可以修饰所有的变量吗)
static修饰的函数有什么特点(static可以修饰所有的变量吗)
2022-08-02 13:20:00 【全栈程序员站长】
大家好,又见面了,我是你们的朋友全栈君。
static修饰的函数叫做静态函数,静态函数有两种,根据其出现的地方来分类:
- 如果这个静态函数出现在类里,那么它是一个静态成员函数;
静态成员函数的作用在于:调用这个函数不会访问或者修改任何对象(非static)数据成员。
其实很好理解,类的静态成员(变量和方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去访问;非静态成员(变量和方法)属于类的对象,所以只有在类的对象产生(创建类的实例)时才会分配内存,然后通过类的对象(实例)去访问。
- 如果它不是出现在类中,那么它是一个普通的全局的静态函数。
这样的static函数与普通函数的区别是:用static修饰的函数,限定在本源码文件中,不能被本源码文件以外的代码文件调用。而普通的函数,默认是extern的,也就是说它可以被其它代码文件调用。
在函数的返回类型前加上关键字static,函数就被定义成为静态函数。普通 函数的定义和声明默认情况下是extern的,但静态函数只是在声明他的文件当中可见,不能被其他文件所用。因此定义静态函数有以下好处: <1> 其他文件中可以定义相同名字的函数,不会发生冲突。 <2> 静态函数不能被其他文件所用。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/125426.html原文链接:https://javaforall.cn
边栏推荐
- 图文短视频自媒体怎么创作?如何让点击量达到10W?
- 百日刷题计划 ———— DAY1
- [typescript] Use the RangePicker component in antd to implement time limit the previous year (365 days) of the current time
- 你知道图论的Dijkstra吗?
- Basic operations of openGauss database (super detailed)
- 【C语言】细品分支结构——switch语句
- .Net 5.0快速上手 Redis
- Do you know Dijkstra of graph theory?
- 二进制中1的个数
- 图论之Kruskal,最小生成树如何优雅解题?
猜你喜欢
随机推荐
最小割和对偶图(未完成)
【622. 设计循环队列】
Based on the flask mall administrator functions
How to implement waterfall flow layout (what is waterfall flow layout)
【C语言】函数哪些事儿,你真的get到了吗?(1)
Fabric.js 动态设置字号大小
This binding to detailed answers
ThinkPHP 5.1反序列化分析和poc
【C语言】剖析函数递归(2)
路由-Tab切换页面
Mysql索引详解(图文并茂)
RESTful 风格(详细介绍 + 案例实现)
this的绑定指向详细解答
国产 GPU 创业潮 喧嚣下的资本游戏
删除链表的节点
js数组递归使用
鲁大师7月新机性能/流畅榜:性能跑分突破123万!
Closures in JS
Markdown怎么加入emoji
自媒体创作怎样提高原创度,打造爆款作品?









