c++ static修饰的函数作用与意义

static修饰的函数叫做静态函数,静态函数有两种,根据其出现的地方来分类:

1.如果这个静态函数出现在里,那么它是一个静态成员函数

静态成员函数的作用在于:调用这个函数不会访问或者修改任何对象(非static)数据成员

其实很好理解,类的静态成员(变量和方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去访问;非静态成员(变量和方法)属于类的对象,所以只有在类的对象产生(创建类的实例)时才会分配内存,然后通过类的对象(实例)去访问。

   

   

2.如果它不是出现在类中,那么它是一个普通的全局的静态函数。

这样的static函数与普通函数的区别是:用static修饰的函数,限定在本源码文件中,不能被本源码文件以外的代码文件调用。而普通的函数,默认是extern的,也就是说它可以被其它代码文件调用。

   

换句话说,在函数的返回类型前加上关键字static,函数就被定义成为静态函数。普通 函数的定义和声明默认情况下是extern的,但静态函数只是在声明他的文件当中可见,不能被其他文件所用。

因此定义静态函数有以下好处

<1> 其他文件中可以定义相同名字的函数,不会发生冲突。

<2> 静态函数不能被其他文件所用。

   

来自 <https://www.cnblogs.com/hellowooorld/p/11281654.html>

posted @   atomxing  阅读(254)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示