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

公司是做网站建设的怎么开票百度快照搜索引擎

公司是做网站建设的怎么开票,百度快照搜索引擎,想做一个网站怎么做的,网站的推广方式组合文章目录 一、单例模式(一)概念(二)实现方式1. 饿汉式2. 懒汉式 二、友元(一)概念(二)友元函数1.概念2.语法格式3. 使用示例访问静态成员变量访问非静态成员变量 (三&…

文章目录

  • 一、单例模式
    • (一)概念
    • (二)实现方式
      • 1. 饿汉式
      • 2. 懒汉式
  • 二、友元
    • (一)概念
    • (二)友元函数
      • 1.概念
      • 2.语法格式
      • 3. 使用示例
        • 访问静态成员变量
        • 访问非静态成员变量
    • (三)友元成员函数
    • (四)友元类

一、单例模式

(一)概念

设计模式只是一种编程思想,没有固定的代码。
是面临一般问题的解决的方法。
如:单例模式、工厂模式、桥接模式…

单例指的是只有一个实例化对象

(二)实现方式

1. 饿汉式

饿汉式是加载时完成创建,无论用或者不用,单例对象一直存在
步骤
构造函数私有化
使用私有的静态成员变量维护唯一的单例对象
定义公有的静态成员函数用于获取单例对象

#include <iostream>
using namespace std;
class MyClass
{
public://定义公有的静态成员函数用于获取单例对象static MyClass& getObj(){return m1;}void print(){cout<<"m_a="<<m_a<<endl;}
private://构造函数私有化MyClass(int a):m_a(a){cout<<"私有化构造函数"<<endl;}//使用私有的静态成员变量维护唯一的单例对象static MyClass m1;int m_a;
};
//静态成员变量的定义
MyClass MyClass::m1=100;int main()
{MyClass &m=MyClass::getObj();MyClass &mm=MyClass::getObj();cout<<"&m ="<<&m<<endl;cout<<"&mm="<<&mm<<endl;m.print();mm.print();return 0;
}

输出结果:
在这里插入图片描述

2. 懒汉式

懒汉式是用时即创建,不用即销毁
步骤
构造函数私有化
使用私有的静态成员指针变量维护唯一的单例对象
定义公有的静态成员函数用于获取单例对象(每次调用该函数,都返回唯一的指针)

#include <iostream>
using namespace std;
class MyClass
{
public://定义公有的静态成员函数用于获取单例对象static MyClass* getObj(){if(NULL == m1){m1=new MyClass(100);}return m1;}void print(){cout<<"m_a="<<m_a<<endl;}
private://构造函数私有化MyClass(int a):m_a(a){cout<<"私有化构造函数"<<endl;}//使用私有的静态成员指针变量维护唯一的单例对象static MyClass *m1;int m_a;
};
//静态成员变量的定义
MyClass* MyClass::m1=NULL;int main()
{MyClass *m=MyClass::getObj();MyClass *mm=MyClass::getObj();cout<<"m ="<<m<<endl;cout<<"mm="<<mm<<endl;m->print();mm->print();return 0;
}

输出结果
在这里插入图片描述

二、友元

(一)概念

友元是C++中一种特殊的机制

(二)友元函数

1.概念

将一个全局函数作为一个类的友元函数,在类中将此函数用friend修饰,就是友元函数

友元函数打破类的封装性,友元可以访问类中的任何权限的成员

2.语法格式

class 类名{
访问控制权限:friend 返回值 函数名(形参名){}
}
  • 注意:
  • 友元函数是不受访问控制权限的限制,可以放在类中任意位置,但使用时一般放在开头。

3. 使用示例

访问静态成员变量
#include <iostream>
using namespace std;
class MyClass
{friend void print();
public:static int s_pub;
private:static int s_pri;
protected:static int s_pro;
};//静态成员变量定义
int MyClass::s_pub=100;
int MyClass::s_pri=200;
int MyClass::s_pro=300;//全局函数
void print(){cout<<"s_pub="<<MyClass::s_pub<<" ";cout<<"s_pri="<<MyClass::s_pri<<" ";cout<<"s_pro="<<MyClass::s_pro<<endl;
}int main()
{print();return 0;
}
访问非静态成员变量
#include <iostream>
using namespace std;
class MyClass
{friend void print(MyClass &c);
public:int m_pub;
private:int m_pri;
protected:int m_pro;
};void print(MyClass &c){c.m_pub=10;c.m_pri=20;c.m_pro=30;cout<<"m_pub="<<c.m_pub<<" ";cout<<"m_pri="<<c.m_pri<<" ";cout<<"m_pro="<<c.m_pro<<endl;
}int main()
{MyClass m;print(m);return 0;
}

(三)友元成员函数

将一个类的成员函数作为另一个类的友元函数

(四)友元类

假设有两个类:类A 类B
类B作为类A的友元类,说明类B可以访问类A的公有权限

  • 注:
  • 友元关系不具有交换性:A是B的朋友,B不一定是A的朋友
  • 友元关系不具有传递性
  • 友元关系不能被继承
  • 友元关系破坏了类的封装性,使访问控制权限失去了意义,因此实际开发时,不要过于依赖友元
http://www.shuangfujiaoyu.com/news/8962.html

相关文章:

  • 阿里巴巴的电子商务网站建设培训机构是干什么的
  • java购物网站开发流程百度seo搜索引擎优化厂家
  • 网站上线之前做哪些工作北京网优化seo公司
  • mac做网站设计百度建站平台官网
  • 站长如何做导航网站网站底部友情链接代码
  • 贵州软件制作杭州seo推广优化公司
  • 做网站还要什么认证吗杭州龙席网络seo
  • 网站建设方案书 doc百度广告官网
  • 数码公司网站建设调查网站seo优化多少钱
  • 免费网站建设网站有那些找客户资源的软件哪个最靠谱
  • 如何获取免费域名网站运营优化培训
  • 公司名称logo设计图免费如何结合搜索检索与seo推广
  • 做肥料网站互联网品牌的快速推广
  • 关于服装店网站建设的策划方案磁力岛
  • 动漫制作专业学什么课程全网营销与seo
  • 贵阳建设工程信息网站深圳百度首页优化
  • 包头做网站企业手机优化软件下载
  • 传媒网站制作网络推广具体内容
  • 动漫网站开发与建设企业管理培训课程网课免费
  • 深圳做网站最好百度一下首页官网下载
  • 有公司可以做网站升级ipv6廊坊首页霸屏排名优化
  • ipv6地址可以做网站吗搜索排名广告营销
  • 免费推广引流怎么做西安seo诊断
  • 国内免费开源crm系统大全seo咨询河北
  • 学做网站游戏教程百度seo排名推广
  • 济南网站建设哪家强2023新一轮病毒叫什么名字
  • 人际网络营销能做吗杭州seo专员
  • 萍乡网站建设百度收录的网站多久更新一次
  • 一品威客网官网电子商务seo
  • 做网站和app哪个难深圳百度推广优化