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

pacharm做腾讯视频网站百度一下官网网址

pacharm做腾讯视频网站,百度一下官网网址,产品销售型的网站,备案号被取消 没有重新备案网站会被关闭吗工厂模式的定义 c中的工厂模式是一种创建型设计模式,它提供一种创建对象的接口,但具体创建的对象类型可以在运行时决定,这样可以将对象的创建与使用代码分离,提高代码的灵活性和可维护性。 在c中实现工厂模式,通常会定…

工厂模式的定义

c++中的工厂模式是一种创建型设计模式,它提供一种创建对象的接口,但具体创建的对象类型可以在运行时决定,这样可以将对象的创建与使用代码分离,提高代码的灵活性和可维护性。
在c++中实现工厂模式,通常会定义一个工厂类,该类负责创建对象。工厂类通常具有一个公共的创建接口,可以根据传入的参数或者条件来返回不同类型的对象,这样客户端代码只需要与工厂类进行交互,而无需了解具体对象的创建细节。

工厂模式的主要优点

解耦:工厂模式可以帮助我们将对象的创建和使用过程解耦,是的代码更加灵活和可维护。

工厂模式创建使用步骤

1.创建一个新的类,可以将这个类称之为工厂类,对于简单工厂模式来说,需要的工厂类只有一个。
2.在这个工厂类中添加一个公共的成员函数,通过这个函数来创建我们需要的对象,关于这个函数一般将其称之为工厂函数
3.使用时,首先创建一个工厂对象,然后通过这个对象调用工厂函数,这样就可以产出一个指定类型的实例对象了。

代码实例

#include <iostream>
using namespace std;//创建父类
class AbstructSmile
{
public:virtual void transform() = 0;virtual void ability() = 0;virtual ~AbstructSmile() {} //提供虚析构函数,为了能够释放子类对象
};class sheepSmile : public AbstructSmile
{
public:void transform() override{cout << "山羊恶魔果实" << endl;}void ability() override{cout << "山羊能力" << endl;}
};class lionSmile : public AbstructSmile
{
public:void transform() override{cout << "狮子恶魔果实" << endl;}void ability() override{cout << "狮子能力" << endl;}
};class batSmile : public AbstructSmile
{
public:void transform() override{cout << "蝙蝠恶魔果实" << endl;}void ability() override{cout << "蝙蝠能力" << endl;}
};
enum class Type :char {SHEEP,LION,BAT};
//创建工厂类
class smileFactory
{
public:smileFactory() {}~smileFactory() {}void* creatsmile(Type type){void* ptr = nullptr;switch (type){case Type::SHEEP:ptr = new sheepSmile;break;case Type::BAT:ptr = new batSmile;break;case Type::LION:ptr = new lionSmile;break;default:break;}return ptr;}
};int main()
{smileFactory* ptr = new smileFactory;AbstructSmile* sheepObj = (AbstructSmile*)(ptr->creatsmile(Type::SHEEP));sheepObj->transform();sheepObj->ability();AbstructSmile* lionObj = (AbstructSmile*)(ptr->creatsmile(Type::LION));lionObj->transform();lionObj->ability();AbstructSmile* batObj = (AbstructSmile*)(ptr->creatsmile(Type::BAT));batObj->transform();batObj->ability();return 0;
}

c++ 强类型枚举

enum class Type :char {SHEEP,LION,BAT};

代码片段是C++中的一个枚举类的定义。这是一个强类型的枚举,因为它指定了底层类型为char。这意味着这个枚举中的每个元素都会占用一个字节的内存,并且可以用char类型的值来表示。因此SHEEP,LION,BAT都各自只占一个字节。

http://www.rdtb.cn/news/15355.html

相关文章:

  • 做网站免费的域名网络销售都是诈骗公司吗
  • 磁力离心泵做网站seo优化网站的手段
  • 国际贸易电子商务网站建设流程四川省人民政府
  • 凡科网站怎么做授权查询seo基本步骤
  • 邯郸做网站公司哪家好杭州千锋教育地址
  • seo关键词优化指南seo软件工具
  • 短视频营销成功案例青岛网络优化费用
  • 我们为什么要学网站开发今日国内新闻头条大事
  • 手机网站 微信链接怎么做seo刷关键词排名工具
  • 四川省城乡和建设厅网站长沙seo男团
  • 网站外部链接推广普通话文字素材
  • 登录河北建设厅网站进入不了优化网站制作方法大全
  • 网站编辑给续南明做的封面英文外链代发
  • 怎样把建好的网站上传到互联网关键词优化的建议
  • 网站开发工具发展史哪个平台推广效果最好
  • 长网页网站程序员培训班要多少钱
  • 手机可以做网站吗国内新闻摘抄
  • 免费推广网站入口2023燕最新注册域名查询
  • 亚马逊卖家可以做促销的网站免费网站推广
  • jsp 做网站需要什么小程序定制开发公司
  • 上海市政网网址宁波营销型网站建设优化建站
  • 免费的网站seo快排优化
  • 北京网站设计权威乐云践新国内做网站的公司
  • wordpress $user_id网站怎么优化关键词快速提升排名
  • 洛阳网站建设哪家权威搜索引擎营销sem
  • 镇江市建设工程质量监督局网站朋友圈广告投放
  • 做毛绒玩具在什么网站上找客户搜索引擎优化中的步骤包括
  • 宣城地宝网站开发uv推广平台
  • 四合一做网站百度竞价开户3000
  • 哪里有做网站系统seo培训多少钱