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

网站在政务新媒体建设wordpress查看用户

网站在政务新媒体建设,wordpress查看用户,东莞网站建设最牛,网站ome系统怎么做5. 原型模式 – 复制粘贴,一摸一样 简介 原型模式(Prototype Pattern)是一种创建型设计模式,其主要目的是通过复制现有对象来创建新的对象,而无需从头开始构建。 使用场景 它通常用于以下情况: 当一个系统…

5. 原型模式 – 复制粘贴,一摸一样

简介

原型模式(Prototype Pattern)是一种创建型设计模式,其主要目的是通过复制现有对象来创建新的对象,而无需从头开始构建。

使用场景

它通常用于以下情况:

  1. 当一个系统需要独立于其类型的对象时,它可以从已有的对象克隆出新的实例,而不是通过构造函数创建。
  2. 当创建一个对象的过程比复制一个现有对象更昂贵时,原型模式可以提高性能。

原型模式的关键思想是创建一个原型对象,然后根据该原型对象创建新的对象。这个原型对象通常是一个已经存在并配置好的对象,它包含了所需的初始状态和属性。新对象从原型对象复制其状态和属性,以便于快速创建多个相似的对象。

实现方式

在实现原型模式时,通常有两种方式:

  1. 浅拷贝(Shallow Copy):在浅拷贝中,只复制对象本身以及对象中的基本数据类型属性,但不会复制对象引用的其他对象。这意味着新对象和原型对象会共享一些对象引用,如果修改了这些共享引用指向的对象,会影响到原型对象和克隆对象。
  2. 深拷贝(Deep Copy):在深拷贝中,不仅复制对象本身和基本数据类型属性,还会递归复制对象引用的其他对象,以确保新对象和原型对象之间没有共享的引用。
优点和注意事项

原型模式的优点包括:

  • 提高性能:避免了重复创建对象时的昂贵初始化过程。
  • 简化对象创建:可以通过复制现有对象来创建新对象,无需了解对象的构造细节。
  • 支持多态性:克隆操作可以用于创建子类对象。

需要注意的是,原型模式在某些情况下可能会引入复杂性,特别是在对象包含循环引用或大量子对象的情况下。因此,在使用原型模式时需要小心处理这些情况。

总之,原型模式是一种有助于创建对象的设计模式,它通过复制现有对象来创建新对象,提供了一种灵活、高效的方式来管理对象的创建和初始化。

实现

实现深拷贝方式,主要是写一个clone方法

// 原型模式
// 时间:2024-10-29
// 作者:@conceal
#include <iostream>
#include <string>
using namespace std;// 原型类
class Prototype
{
public:virtual Prototype *clone() = 0;virtual void show() = 0;
};// 具体原型类
class ConcretePrototype : public Prototype
{
public:ConcretePrototype(const string &s){m_str = s;}Prototype *clone(){return new ConcretePrototype(*this);}void show(){cout << m_str << endl;}private:string m_str;
};int main()
{Prototype *p = new ConcretePrototype("A");Prototype *p1 = p->clone();p->show();p1->show();delete p;delete p1;return 0;
}

输出

A
A

http://www.yayakq.cn/news/727023/

相关文章:

  • 会计信息网站建设的意思wordpress 购买主题
  • 网站编程学仿贴吧的网站
  • 贵州省建设网官方网站360网站做不了网银怎么办
  • 南京建设监理协会网站打不开安龙网站建设
  • 我想承包小工程seo整站优化报价
  • 网站demo怎么做一蓝网站建设
  • 做教育机构网站王烨捷
  • 网站建设语言什么语言网站备案
  • 没有做网站能备案吗网站换ip 有多大影响
  • 产品销售类网站 模板网页设计小白做网站
  • 网站后台放在哪里个人简历网站模板免费
  • 大连网站推广招聘做会议活动的网站
  • 51制作视频mv网站网站关键词分隔
  • 网站开发目录结构网页设计作业致谢
  • 大气的企业网站一个网站的二级目录在另一台服务器上_怎么做
  • 怎样推广公司的网站建e网室内设计网官网下载
  • 河北盛通公路建设有限公司网站游戏网站网页设计
  • 深圳门户网站有哪些wordpress后台卡
  • 山西省财政厅网站三基建设专栏无锡哪家网站做的比较好
  • 个人网站注册步骤图解常宁网站
  • 外贸网站屏蔽国内ipwordpress 分类菜单
  • 六安三十铺苏州百度首页优化
  • 全屏网站设计技巧国内无代码和低代码平台
  • 俄语网站开发安徽设计公司排名
  • 常见的网站首页布局中国移动网站官网
  • 北京物流网站建设花之语网页设计代码
  • 网站建设组成部分网站管理系统开发的
  • 给企业做网站 内容需要对方提供网络服务有点问题别紧张试试看刷新页面
  • jsp网站开发的环境配置建设网站的标语
  • 怀化二医院网站网络营销成功案例分析其成功原因