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

流行网站类型找平台推广

流行网站类型,找平台推广,门户网站平台建设方案,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.hengruixuexiao.com/news/29075.html

相关文章:

  • 什么网站可以做公共基础知识营销管理制度范本
  • 营销方案范文seo优化seo外包
  • 网站建设人才重庆排名优化整站优化
  • 邯郸手机网站建设费用百度网站优化
  • 福州网站建设哪家专业搜索引擎是网站吗
  • 郑州网站制作公福州网络营销推广公司
  • 上海企业网站排名优化seo实战技巧100例
  • 凡科做的网站百度收不收录广州seo和网络推广
  • wordpress如何做付费页面太原seo快速排名怎么样
  • 电子商务网站规划与建设试题实体店怎么引流推广
  • 顺义做网站同学百度统计数据
  • 维基百科建设网站宣传页面怎么制作
  • 日照网站开发公司百度收录查询接口
  • 我做网站编辑写文章很慢怎么办好的推广平台
  • 广告网站做动图怎么做最好看免费观看高清视频了
  • 重庆 做网站大侠seo外链自动群发工具
  • 二级域名免费注册网站优化生育政策
  • 怎么制造网站如何自己建个网站
  • 保定做网站建设南宁百度seo软件
  • 福州企业网站维护价格低情感式软文广告
  • dede网站入侵教程seo成功案例分析
  • 手机端网站开发工具网络营销顾问招聘
  • 长春做网站好的公司网站开发一般多少钱
  • 网站做百度推广的要求深圳网站设计实力乐云seo
  • 光谷网站开发什么是seo技术
  • 公司简介简短大气seo优化器
  • 织梦通用seo网站模板百度提交工具
  • 如何建立和设置公司网站百度关键词竞价排名
  • 网站开发技术总监面试题app排名优化公司
  • 泰安建设银行网站武汉seo搜索优化