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

流行网站类型5118关键词挖掘工具

流行网站类型,5118关键词挖掘工具,什么招聘网最好找工作,wordpress预约订单插件目录 1. 享元模式简介 2. 代码示例 1. 享元模式简介 享元模式是一种结构型模式。 享元模式用于缓存共享对象,降低内存消耗。共享对象相同的部分,避免创建大量相同的对象,减少内存占用。 享元模式需要将对象分成内部状态和外部状态两个部分…

目录

1. 享元模式简介

2. 代码示例


1. 享元模式简介

享元模式是一种结构型模式

享元模式用于缓存共享对象,降低内存消耗。共享对象相同的部分,避免创建大量相同的对象,减少内存占用。

享元模式需要将对象分成内部状态和外部状态两个部分

所谓内部状态指的是可以共享的状态,外部状态指的是会随着对象的使用而改变的的状态。

比如,如果要模拟一个五子棋程序。对棋子来说,棋子的图片就属于内部状态,而棋子的位置和大小就属于外部状态。棋子的图片可以被所有使用棋子的地方所共享,棋子的位置和大小每个使用的地方都不一样。


享元模式通常要搭配简单工厂模式一起使用,在简单工厂内使用一个享元对象的缓存池,缓存享元对象。

2. 代码示例

就以棋子模拟程序作为示例,代码如下所示:

#if 1#include <iostream>
#include <map>
#include <memory>
#include <string>using namespace std;enum ChessPieceType { White, Black };class ChessPiece {
public:virtual void Draw(int x, int y) = 0;virtual ~ChessPiece() {}
};class WhiteChessPiece : public ChessPiece
{
public:void Draw(int x, int y) override{cout << "在(" << x << "," << y << ") 位置放置白棋子" << endl;}
};class BlackChessPiece : public ChessPiece
{
public:void Draw(int x, int y) override{cout << "在(" << x << "," << y << ") 位置放置黑棋子" << endl;}
};class ChessFactory
{
public:static shared_ptr<ChessPiece> CreateChessPiece(ChessPieceType type){if (chessPieces.find(type) == chessPieces.end()){if (type == White){chessPieces[type] = make_shared<WhiteChessPiece>();}else if (type == Black){chessPieces[type] = make_shared<BlackChessPiece>();}}return chessPieces[type];}
private:static map<ChessPieceType, shared_ptr<ChessPiece>> chessPieces;
};map<ChessPieceType, shared_ptr<ChessPiece>> ChessFactory::chessPieces;int main()
{auto piece1 = ChessFactory::CreateChessPiece(ChessPieceType::White);piece1->Draw(1, 2);auto piece2 = ChessFactory::CreateChessPiece(ChessPieceType::Black);piece2->Draw(3, 4);auto piece3 = ChessFactory::CreateChessPiece(ChessPieceType::White);piece3->Draw(5, 6);return 0;
}#endif

运行截图如下:

http://www.ds6.com.cn/news/88683.html

相关文章:

  • 福田做网站联系电话在线网站建设
  • 淘客网站cms怎么做百度竞价渠道户
  • 福利窝又一个wordpress广东seo推广方案
  • 简易网站在线客服系统深圳广告投放公司
  • 成都学校网站建设谷歌关键词搜索量数据查询
  • 免费做公益网站百度广告收费标准
  • 哪些网站做的好处和坏处兰州网络seo公司
  • 佛山网站建设价格美国最新新闻头条
  • 做网站推广和头条推广历下区百度seo
  • 竞价下载班级优化大师
  • 做冠县梨园网站怎么做北京网站优化体验
  • 手机网站建设讯息免费刷推广链接的网站
  • 营销型网站特点企业网络营销推广平台
  • 网站制作软件排行榜广东深圳疫情最新情况
  • 网站开发 项目式说课网络推广营销
  • notepad做网站seo推广培训课程
  • 网站做301重定向怎么做网站的优化seo
  • 工商网站如何做实名关键词录入榜
  • 成都医院做网站建设搜索引擎广告
  • 北京旅游网站建设推客平台
  • 苏州品牌网站建设微信推广软件有哪些
  • 网站制作报价单冯耀宗seo博客
  • 深圳做微信商城网站最好的网络营销软件
  • 做博客网站怎么赚钱吗百度快速收录接口
  • 网站建设公司有多少家网站关键词排名优化系统
  • 制作网页怎么插入图片seo课程哪个好
  • 网站名字备案流程今天百度数据
  • 设计师招聘网站推荐百度成都总部
  • 平顶山有做网站的公司百度免费推广方法
  • 公司网站有哪些app广告联盟平台