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

卖鞋的网站建设思路网络软文广告

卖鞋的网站建设思路,网络软文广告,网站如何续费,品牌宣传海报设计制作设计模式 目的 实现可重用解决方案,构筑易维护、可扩展的软件系统。 六大原则 单一职责: 类的职责单一,一个方法做一件事。 开闭原则: 拓展开放,修改关闭。 里氏替换: 父类能出现的地方,子…

设计模式

目的

实现可重用解决方案,构筑易维护、可扩展的软件系统。

六大原则

单一职责: 类的职责单一,一个方法做一件事。

开闭原则: 拓展开放,修改关闭。

里氏替换: 父类能出现的地方,子类可以替换。子类必须全部实现父类方法,尽量不暴露自己public方法供外界使用。覆盖或实现父类方法时,输入参数可以多。

依赖倒置: 模块之间的依赖通过抽象发生,具体类之间不依赖。每个类尽量有抽象类,任何类不应该从具体类派生,尽量不重写基类方法。

迪米特法则: 尽量减少对象间交互,从而减少类间耦合。

接口隔离原则: 类间的依赖关系建立在最小的接口上。

抽象构建框架,实现拓展细节。

单例模式

一个类只有一个对象,及系统中只有一个实例,实例被所有程序模块共享。

例如服务器配置信息放在一个文件中,配置数据由单例对象统一读取,服务进程的其他对象通过单例对象获取配置信息。

实现

有饿汉模式和懒汉模式两种实现模式。

饿汉模式

程序启动就创建唯一实例对象。

多线程获取单例对象不需要加锁。

#include <iostream>
#include <string>class Singleton {
private:// 私有构造函数,防止外部创建实例Singleton() : data("Singleton") {std::cout << "Singleton instance created!" << std::endl;}// 私有析构函数,防止外部删除实例~Singleton() {}// 删除拷贝构造函数和赋值运算符Singleton(const Singleton&) = delete;Singleton& operator=(const Singleton&) = delete;// 静态成员变量,类加载时初始化static Singleton instance;// 成员变量std::string data;public:// 获取单例对象的静态方法static Singleton& getInstance() {return instance;}// 获取成员变量的方法std::string& getData() {return data;}
};// 在类外初始化静态成员变量
Singleton Singleton::instance;int main() {// 获取单例对象Singleton& singleton = Singleton::getInstance();// 访问单例对象的成员变量std::cout << "Data: " << singleton.getData() << std::endl;// 再次获取单例对象,验证是否为同一个实例Singleton& singleton2 = Singleton::getInstance();if (&singleton == &singleton2) {std::cout << "Both references point to the same instance!" << std::endl;}return 0;
}

懒汉模式

如果单例对象构造特别耗时或者耗资(加载插件、网络),可在第一次使用时才创建对象。

C++11 之后,局部静态变量的初始化是线程安全的,因此可以直接使用局部静态变量实现懒汉模式

#include <iostream>
#include <string>class Singleton {
private:// 私有构造函数,防止外部创建实例Singleton() : data("Singleton") {std::cout << "Singleton instance created!" << std::endl;}// 私有析构函数,防止外部删除实例~Singleton() {}// 删除拷贝构造函数和赋值运算符Singleton(const Singleton&) = delete;Singleton& operator=(const Singleton&) = delete;// 成员变量std::string data;public:// 获取单例对象的静态方法static Singleton& getInstance() {static Singleton instance;  // 局部静态变量,线程安全return instance;}// 获取成员变量的方法std::string& getData() {return data;}
};int main() {// 获取单例对象Singleton& singleton = Singleton::getInstance();// 访问单例对象的成员变量std::cout << "Data: " << singleton.getData() << std::endl;// 再次获取单例对象,验证是否为同一个实例Singleton& singleton2 = Singleton::getInstance();if (&singleton == &singleton2) {std::cout << "Both references point to the same instance!" << std::endl;}return 0;
}

推荐一下

https://github.com/0voice

http://www.tj-hxxt.cn/news/60643.html

相关文章:

  • vshtml5网站开发seo网站优化做什么
  • 服装企业网站内容规划淄博seo
  • 做网站的例子网站推广专家十年乐云seo
  • 贵阳做网站公司排名seo的概念是什么
  • 石家庄免费建站域名信息查询
  • 商城网站功能表北京谷歌seo公司
  • 保险网站建设优缺点品牌推广活动策划案例
  • 广州seo网站推广优化全国最新的疫情数据
  • 域名及网站建设实验报告怎么发帖子做推广
  • 网站模板中文版百度seo教程视频
  • 外地人网站备案seo自学教程seo免费教程
  • 黄石公司做网站如何百度推广
  • 合肥网站建设web0551流量推广怎么做
  • 河北邯郸做wap网站创建自己的网址
  • 网站如何做支付系统宁波seo推广哪家好
  • 织梦网站定时免费seo排名软件
  • wordpress ajax post南京seo网站管理
  • 成都公司做网站百度营销推广登录
  • 网站安全建设方案例文新闻头条最新消息今天
  • 做网站的app怎么免费建立网站
  • 域名注册完成后怎么做网站不知怎么入门
  • 临沂做网站费用seo优化是啥
  • vs2013网站建设抖音搜索关键词推广
  • 可视化网站建设平台推广普通话标语
  • 网站建设 青岛营销方案
  • 爬知乎文章做网站快速收录网
  • wordpress 一键建站关键词营销优化
  • 左侧导航栏网站百度代理授权查询
  • 淘宝网站建设的特点北京学电脑的培训机构
  • 建站平台 绑定域名网站推广方法