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

国外b站免费版在线查网站的ip地址

国外b站免费版,在线查网站的ip地址,网上学编程靠谱吗,平面素材网站排名目录 静态成员 静态成员变量 静态成员函数 const 静态成员属性 静态成员实现单例模式 静态成员 在类定义中,它的成员(包括成员变量和成员函数),这些成员可以用关键字 static 声明为静态的,称为静态成员。 不管这…

目录

静态成员

静态成员变量

静态成员函数

const 静态成员属性

静态成员实现单例模式


静态成员

在类定义中,它的成员(包括成员变量和成员函数),这些成员可以用关键字 static 声明为静态的,称为静态成员。 不管这个类创建了多少个对象,静态成员只有一个拷贝,这个拷贝被所有属于这个类的对象共享

静态成员变量

静态成员变量在内存中只有一份,多个成员共享一个静态变量
静态成员变量必须类内声明,类外定义
静态成员变量可以通过类的作用域访问
静态成员变量可以通过类的对象访问
class Person{public://类的静态成员属性static int sNum;private:static int sOther;
};
//类外初始化,初始化时不加 static
int Person::sNum = 0;
int Person::sOther = 0;
int main(){//1. 通过类名直接访问Person::sNum = 100;cout << "Person::sNum:" << Person::sNum << endl;//2. 通过对象访问Person p1, p2;p1.sNum = 200;cout << "p1.sNum:" << p1.sNum << endl;cout << "p2.sNum:" << p2.sNum << endl;//3. 静态成员也有访问权限,类外不能访问私有成员//cout << "Person::sOther:" << Person::sOther << endl;Person p3;//cout << "p3.sOther:" << p3.sOther << endl;system("pause");return 0;
}

静态成员函数

静态成员函数只能访问静态变量,不能访问普通成员变量
静态成员函数的使用和静态成员变量一样
静态成员函数也有访问权限
普通成员函数可访问静态成员变量、也可以访问非经常成员变量
class Person{public://普通成员函数可以访问 static 和 non-static 成员属性void changeParam1(int param){mParam = param;sNum = param;}//静态成员函数只能访问 static 成员属性static void changeParam2(int param){//mParam = param; //无法访问sNum = param;}private:static void changeParam3(int param){//mParam = param; //无法访问sNum = param; }public:int mParam;static int sNum;
};
//静态成员属性类外初始化
int Person::sNum = 0;
int main(){//1. 类名直接调用Person::changeParam2(100);//2. 通过对象调用Person p;p.changeParam2(200);//3. 静态成员函数也有访问权限//Person::changeParam3(100); //类外无法访问私有静态成员函数//Person p1;//p1.changeParam3(200);return 0;
}

const 静态成员属性

const修饰的静态成员变量保存在常量区 只读权限 在内存中只有一份

const修饰的静态成员变量可以在类内定义且初始化

const修饰的静态成员变量可以通过类的定义域访问

const修饰的静态成员变量可以通过对象访问

静态成员函数可以访问const修饰的静态成员变量

#include <iostream>
#include <string.h>
using namespace std;class Person
{public:int a;//静态成员变量不能再类内初始化 类内只能声明 定义在全局 声明的作用只是限制静态变
量作用域static int b;//静态成员变量 在编译阶段就被分配内存 存在静态全局区const static int c = 1000;//const 修饰的静态全局变量 时保存在常量区 不可修改(只
读) 在内存中只有一份
};void test01()
{cout << Person::c << endl;Person p1;cout << p1.c << endl;
}
int main()
{test01();return 0;
}

静态成员实现单例模式

单例模式:一个类只能创建出一个对象

单例模式实现的步骤:

        1.将无参构造私有化

        2.将拷贝构造私有化

        3.定义一个静态的成员指针变量

        4.将静态的成员指针变量私有化提供获得唯一对象的地址接口

#include <iostream>
#include <string.h>using namespace std;class Person
{public:int age;int studenid;static Person* instance(){return single;}private:Person()//无参构造私有化{}Person(const Person &p)//拷贝对象私有化{}	static Person *single;
};Person *Person::single = new Person;void test03()
{   Person* p = Person::instance();p->age = 10;p->studenid = 20;Person* p1 = Person::instance();cout << p1->age<<""<<p1->studenid<<endl;}
void test02()
{   //Person::single->age = 100;//Person::single->studenid = 100;//Person p1(*Person::single);调用拷贝构造实例化出一个对象
}int main()
{test03();return 0;
}

http://www.15wanjia.com/news/11238.html

相关文章:

  • 做签名的网站广东seo排名
  • wordpress微信采集插件企业网站seo贵不贵
  • 嘉定南翔网站建设网页设计工作室长沙
  • 中国上市公司前100名全国seo搜索排名优化公司
  • 中国建设银行信用卡中心网站太原网络推广公司
  • 网站建设路由器怎么设置seo推广怎么样
  • wordpress 渐变主题企业seo如何优化
  • 做网站公司北京应用市场
  • 怎么在阿里做网站做百度推广需要什么条件
  • 找图片素材的网站有哪些互联网公司
  • 石家庄网站建设诚荐优度网络如何创建自己的卡网
  • 为什么做网站网站百度知道个人中心
  • 设计企业品牌logoseo服务是什么
  • 做民宿最大的网站德州seo整站优化
  • 网站的商桥怎么做安徽做网站公司哪家好
  • python建设购物网站网站建设优化哪家公司好
  • 注册登录常用的seo工具
  • 鼎湖网站建设表白网页制作免费网站制作
  • 做网站要用什么语言百度2023免费
  • 网站建设 服务器 预算报价清单b2b网站排名
  • 网站模版设计企业网站优化推广
  • 一个网站包括全国疫情最新报告
  • 网站logo是指合肥seo优化
  • 高端品牌车网页搜索优化seo
  • 17做网店网站池尾个人如何注册网址
  • 做电商卖玉器的网站seo服务公司
  • 网站排名要怎么做百度宣传推广费用
  • 网站管理助手+建设中干净无广告的搜索引擎
  • 做感恩网站的图片三十个知识点带你学党章
  • 网站建设需要保存什么好搜网惠州seo