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

seo网站推广怎样html5网站有哪些

seo网站推广怎样,html5网站有哪些,纯文本网页制作步骤,企业微信公众号开发▶实现一个类#xff0c;不能被拷贝 ▶实现一个类#xff0c;只能在堆上创建 ❗实现一个类#xff0c;只能创建在栈上 ❗设计一个不能继承的类 ❗单例模式——一个类只能生成一个对象   ❔饿汉模式——在每次程序启动都会自动生成一个对象   ❓懒汉模式——在第一次需要…▶实现一个类不能被拷贝 ▶实现一个类只能在堆上创建 ❗实现一个类只能创建在栈上 ❗设计一个不能继承的类 ❗单例模式——一个类只能生成一个对象   ❔饿汉模式——在每次程序启动都会自动生成一个对象   ❓懒汉模式——在第一次需要的时候创建 实现一个类不能被拷贝 拷贝可能需要调用拷贝构造operator class CopyBan { public:// c11CopyBan() default;CopyBan(const CopyBan) delete;CopyBan operator(const CopyBan) delete; private:// c98// CopyBan(const CopyBan);// CopyBan operator(const CopyBan) ; };第一种采用c11delete关键字 第二种采用c98声明成私有的方式实现 实现一个类只能在堆上创建 因为new HeapOnly() 需要调用默认构造函数所以不能将默认构造函数禁掉需要将默认构造函数管理起来 new HeapOnly(...) 可能调用有参构造拷贝构造 // 设计一个只能创建在堆上的类 class HeapOnly { public:static HeapOnly* CreateObject(); private:// 因为new HeapOnly() 需要调用默认构造函数所以不能将默认构造函数禁掉需要将默认构造函数管理起来// new HeapOnly(...) 可能调用有参构造拷贝构造// HeapOnly(){cout HeapOnly() endl;}// HeapOnly* b new HeapOnly;// HeapOnly a(b); 这种是创建在栈上// 所以为了严格管理创建在堆上需要不能写HeapOnly(const HeapOnly*);HeapOnly(const HeapOnly) delete;HeapOnly operator(const HeapOnly) delete; }; HeapOnly* HeapOnly::CreateObject() {return new HeapOnly(); }在堆上创建对象都是需要通过new进行创建可能会想返回值是new的对象能不能表示创建在堆上 答案是不能返回值是堆上的对象只能说返回的是堆上的对象但是你自己的这个对象还是栈上开辟的 实现一个类只能创建在栈上 无参构造是需要的——需要在栈上创建 但是不能在堆上创建所以不能使用new StackOnly这个会调用默认构造函数所以要将默认构造函数管理起来 只需要将new禁掉就行了还有delete // 设计一个只能创建在栈上的类 class StackOnly { public:void* operator new(size_t size) delete;void operator delete(void* p) delete; private:// 无参构造是需要的——需要在栈上创建// 但是不能在对上创建所以不能使用new StackOnly这个会调用默认构造函数所以要将默认构造函数管理起来// 只需要将new禁掉就行了还有delete };设计一个不能继承的类 需要明确继承是需要默认调用父类的构造函数——默认构造有参构造拷贝构造operator 所以需要将这写函数管理起来首先不能将这些函数禁掉所以就需要手动管理起来 c98的方式 将默认构造有参构造拷贝构造operator 写成private class NonInherit { public:// 需要明确继承是需要默认父类的构造函数——默认构造有参构造拷贝构造operator// 所以需要将这写函数管理起来首先不能将这些函数禁掉所以就需要手动管理起来// c11 的方式 final这个方法更好支持在堆上创建而且使用final编译器会有报错// c98 的方式 private private:// 如果使用c98的方式这个类就不能在堆上创建对象了所以不太好需要换种方式NonInherit();NonInherit(const NonInherit);NonInherit operator(const NonInherit); };如果使用private方式这个类就不能在堆上创建对象所以不太好需要换种方式 我们额外在多想一下为什么不能将父类构造函数分别放到protect,private中子类使用protect,private继承 对于publicprotect 属性取与继承方式范围小的那个 比如说protect属性private继承方式子类中private可见——父类protect属性成员转变成子类的private成员public属性也是类似对于private属性使用任何继承方式在子类中都是不可见的——就像爸爸的私有物品儿子使用什么方式都是看不到的 这也是为什么不将父类构造函数写成protect的原因所以将父类构造函数写成private属性很安全 不懂的可以看一下这个文章——各种继承方式在子类中的可见性 c11的方式 定义父类名使用final class NonInherit final { public:// 需要明确继承是需要默认父类的构造函数——默认构造有参构造拷贝构造operator// 所以需要将这写函数管理起来首先不能将这些函数禁掉所以就需要手动管理起来// c11 的方式 final这个方法更好支持在堆上创建而且使用final编译器会有报错// c98 的方式 private private:// 如果使用c98的方式这个类就不能在堆上创建对象了所以不太好需要换种方式//NonInherit();//NonInherit(const NonInherit);//NonInherit operator(const NonInherit); };c11 的方式 final这个方法更好支持在堆上创建而且使用final编译器会有报错 单例模式——一个类只能生成一个对象 ✨饿汉模式——在每次程序启动都会自动生成一个对象 比如在某个服务器程序中该服务器的配置 信息存放在一个文件中这些配置数据由一个单例对象统一读取然后服务进程中的其他对象再 通过这个单例对象获取这些配置信息这种方式简化了在复杂环境下的配置管理。 // 饿汉模式 class Singleton_hunger {// 在程序运行起来就已经准备好了对象,并且这个对象只能有一个 public:Singleton_hunger(const Singleton_hunger) delete;Singleton_hunger operator(const Singleton_hunger) delete;// 这个函数必须是static如果普通函数就需要先有对象才能访问函数但是不能创建对象——必须是staticstatic Singleton_hunger* GetSingleton_hunger(){return tem;} private:Singleton_hunger(){cout Singleton_hunger endl;}// 静态成员也受访问区域限制static Singleton_hunger tem; }; Singleton_hunger Singleton_hunger::tem;静态成员可以调用构造函数 ✨懒汉模式——在第一次需要的时候创建 如果单例对象构造十分耗时或者占用很多资源比如加载插件啊 初始化网络连接啊读取 文件啊等等而有可能该对象程序运行时不会用到那么也要在程序一开始就进行初始化 就会导致程序启动时非常的缓慢。 所以这种情况使用懒汉模式延迟加载更好。 // 懒汉模式 class Singleton_lazy {// 懒汉模式——在需要的时候创建,并且符合单例模式 public:Singleton_lazy(const Singleton_lazy) delete;Singleton_lazy operator(const Singleton_lazy) delete;// 这个函数必须是static如果普通函数就需要先有对象才能访问函数但是不能创建对象——必须是staticstatic Singleton_lazy* GetSingleton_lazy(){if (tem nullptr)tem new Singleton_lazy;return tem;} private:Singleton_lazy(){cout Singleton_lazy endl;}static Singleton_lazy* tem; }; Singleton_lazy* Singleton_lazy::tem nullptr;在懒汉模式中需要需要使用指针来记录对象 可以使用nullptr表示没有初始化一举两得可以省去用另一个变量标记是否初始化另一个原因 static Singleton_lazy GetSingleton_lazy(){if (_flag 0)tem Singleton_lazy();return tem;}单例模式并未结束后来会添加线程知识 本次学习到此就结束了只是讲了最基本的设计模式还有很多设计模式需要我们去学习加油
http://www.pierceye.com/news/812519/

相关文章:

  • 松江新城做网站公司国产成年做视频网站
  • 杭州网站推广服务网站单页面怎么做
  • 房地产网站建设案例wordpress 判断移动端
  • 网站开发过程文档网站代码需要注意什么问题
  • 怎么选一个适合自己的网站wordpress怎么修改后台登录地址
  • 网页制作与网站建设自考西安千秋网络科技有限公司
  • 建设网站的费用入什么科目永久免费google搜索引擎
  • 拍卖网站怎么做梧州网页设计师招聘
  • 炫酷网站源码下载网站建设副业
  • 做dw和ps的网站教学做网站属于什么费用
  • 秦皇岛网站制作小程序开发wordpress调用分类标签
  • 网站绑定别名好吗台州品牌网站设计
  • 安徽省住房和城乡建设厅网站域名东莞松山湖华为小镇
  • 购物网站开发教程中文版做一个自己的免费网站吗
  • 网站建设网络推广平台湖北省级建设主管部门网站
  • 手机网站建设口碑好google海外版
  • 网站加视频播放设计怎么做的oa系统管理平台
  • 湛江有网站的公司名称秘密入口3秒自动进入
  • 网站建设需要租用什么北京网站设计制作过程
  • 设计高端网站建设电子商务平台的建设步骤
  • 对外网站ipv6建设方案模板网站提交地址
  • 网站优化包括哪些内容哪一个网站做专栏作家好点
  • 网站外包 博客网络广告的优势有哪些
  • 福建网站建设网wordpress批量替换标签
  • 网站建设 海外房产商标注册证查询
  • 门户网站建设要求易申建设网站
  • 现在创业什么行业最好seo全网营销公司
  • 网站 域名 授权服务器 分布式网站模板英文
  • wordpress 二维码插件搜索引擎优化的方法
  • 国外申请域名的网站CC wordpress 攻击