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

潜江资讯网最新招聘信息厦门seo推广

潜江资讯网最新招聘信息,厦门seo推广,律所网站建设管理制度,网站开发需要多线程吗9. 静态成员 ① 静态成员就是在成员变量和成员函数前加上关键字static,称为静态成员。 ② 静态成员分为: 1. 静态成员变量 --所有对象共享同一份数据 --在编译阶段分配内存 --类内声明,类外初始化 2. 静态成员函数 --所有对象共享同一个函数…

9. 静态成员

① 静态成员就是在成员变量和成员函数前加上关键字static,称为静态成员。

② 静态成员分为:

1. 静态成员变量
--所有对象共享同一份数据
--在编译阶段分配内存
--类内声明,类外初始化
2. 静态成员函数
--所有对象共享同一个函数
--静态成员函数只能访问静态成员变量

③ 调用静态成员函数有两种方法:

1. 通过对象调用
2. 通过类名调用

9.1 静态成员变量

#include<iostream>
using namespace std;//静态成员变量
class Person
{
public://1、所有对象都共享同一份数据//2、编译阶段就分配内存//3、类内声明,类外初始化操作static int m_A;//静态成员变量也是有访问权限的
private:static int m_B;
};int Person::m_A = 100;void test01()
{Person p;cout << p.m_A << endl;Person p2;p2.m_A = 200;//100 ? 200,共享同一份数据,所以p.m_A为200cout << p.m_A << endl;
}void test02()
{//静态成员变量 不属于某个对象上,所有对象都共享同一份数据//因此静态成员变量有两种访问方式//1、通过对象进行访问Person p;cout << p.m_A << endl;//2、通过类名进行访问cout << Person::m_A << endl;//cout << Person::m_B << endl; //报错,私有作用域,出了类是不可以访问的
}int main()
{test01();test02();system("pause");
}

运行结果:

  • 100
  • 200
  • 200
  • 200
  • 请按任意键继续. . .

9.2 静态成员函数

#include <iostream>
using namespace std;//静态成员函数
//所有对象共享同一个函数
//静态成员函数只能访问静态成员变量
class Person
{
public://静态成员函数static void func(){m_A = 100; //静态成员函数可以访问静态成员变量,这个数据是共享的,只有一份,所以不需要区分哪个对象的。                                //m_B = 200; //静态成员函数不可以访问非静态成员变量,无法区分到底是哪个对象的m_B属性,非静态成员变量属于特定的对象上面cout << "static void func调用" << endl;}static int m_A; //静态成员变量int m_B; //非静态成员变量//静态成员函数也是有访问权限的
private:static void func2(){cout << "static void func2调用" << endl;}
};int Person::m_A = 0;//有两种访问方式
void test01()
{//1、通过对象访问Person p;p.func();//2、通过类名访问Person::func();   //静态成员函数,所有对象共享同一个函数,可以直接通过类名访问。//Person::func2(); //类外访问不到私有静态成员函数
}int main()
{test01();system("pause");return 0;}

运行结果:

  • static void func调用
  • static void func调用
  • 请按任意键继续. . .

9.3 成员变量和成员函数分开存储

① 在C++中,类内对的成员变量和成员函数分开存储,只有非静态成员变量才属于类的对象上。

#include <iostream>
using namespace std;class Person01
{
public:};class Person02
{
public:int m_A; //非静态成员变量  属于类的对象上static int m_B;  //静态成员变量 不属于类对象上//void fun(){} //非静态成员函数 不属于类对象上static void func2() {} //静态成员函数 不属于类的对象上
};int Person02::m_B = 0;void test01()
{Person01 p;//空对象占用内存空间为:1//C++编译器会给每个空对象也分配一个字节空间,是为了区分空对象占内存的位置//每个空对象也应该有一个独一无二的内存空间cout << "size of p = " << sizeof(p) << endl;
}void test02()
{Person02 p2;cout << "size of p2 = " << sizeof(p2) << endl;  //通过打印内存空间大小,检测静态成员变量、非静态成员函数等在不在对象内存上....      
}int main()
{test01();test02();  system("pause");return 0;}

运行结果:

  • size of p = 1
  • size of p2 = 4
  • 请按任意键继续. . .

链接:https://www.zhihu.com/question/437657370/answer/1692846096

http://www.r43.cn/news/79187.html

相关文章:

  • 苏州建设造价信息网站网络推广都有哪些平台
  • 众搜科技做百度网站德州网站建设优化
  • 心理测试用什么网站做关键词工具软件
  • 公安局网站建设网站seo优化多少钱
  • 专做土特产的网站近期国内新闻热点事件
  • 网站你懂我意思正能量晚上下载智能优化网站
  • 学生网页设计代码大全电影站的seo
  • 山东响应式网站semseo
  • 火星建站免费wap自助建站营销神器
  • 厦门市机场建设招投标网站美国站外推广网站
  • 资源共享网站建设下载百度免费版
  • 上海策朋网站设计公司现在有什么技能培训班
  • 网页设计网站规划报告苏州百度
  • 花都区手机版网站建设网络营销公司热线电话
  • 随州市住房和城乡建设委员会网站搜狐酒业峰会
  • 淄博网站建设企业我想找一个营销团队
  • 仙侠类网页游戏排行榜sem seo
  • 公司网站建设开发维护工作推广软件有哪些
  • 手工做皮具国外的网站做小程序要多少钱
  • 做网站要买数据库软文范例800字
  • 网站设计技术文章百度引流推广怎么做
  • 祁连网站建设公司合肥seo推广公司
  • 黄骅市企业名录杭州seo联盟
  • 代做设计的网站精准防控高效处置
  • 网站描述标签优化seo网页推广
  • 广州知名网站建设后台管理便捷网络营销过程步骤
  • 汕头多语种网站制作网站建设服务商
  • 云服务器网站解析安装百度到桌面
  • wordpress dux1.9惠州市seo广告优化营销工具
  • 个体户做网站有用吗青岛网站开发公司