C++设计模式-单一职责原则

单一职责原则定义了类的封装规范。(封装、继承、多态)

定义:有且仅有一个引起类变化的原因。

e.g.1.一个需要重新封装的类

class A {
public:void funName() {}void funSex() {}void funAge() {}void funCourse() {}//要重新封装到其他类void funTeacher() {}//要重新封装到其他类void funProject() {}//要重新封装到其他类
private:std::string m_strName, m_strSex;int m_nAge;std::string m_Course1, m_TeacherName,m_ProjectName;//要重新封装到其他类
};

e.g.2不可散乱为全局变量

std::string g_strName, g_strSex;
int g_nAge;
std::string g_Course1, g_TeacherName, g_ProjectName;
void funName() {}
void funSex() {}
void funAge() {}
void funCourse() {}
void funTeacher() {}
void funProject() {}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/665842.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

红日靶场1搭建渗透

环境搭建 下载好镜像文件并解压,启动vmware 这里我用自己的win7 sp1虚拟机作为攻击机,设置为双网卡NAT,vm2 其中用ipconfig查看攻击机ip地址 设置win7 x64为双网卡,vm1,vm2 设置win08单网卡vm1,win2k3为单…

关于python依赖包的问题(番外)

前言: 经常一个项目写完,需要导出他所有的依赖包到另外一个项目里面,那么怎么进行操作呢? 正文: 到处依赖包文件: 在一个Python项目中使用pip freeze > requirements.txt命令是一种常用方式,用以生成一个包含所有已安装Python依赖包及其对应版本的列表文件。…

jupyter notebook更改工作目录的2个细节

详细步骤参考知乎原文: 如何更改Jupyter Notebook的默认工作路径? - 知乎 (zhihu.com​​​​​​) 步骤4中需要删除 #符号和后面的空格!一定要删除空格,否则会出现语法错误的报错 步骤5中,经过评论区提醒后&#xf…

蓝桥杯备战——12.PCF8591芯片的使用

目录 1.芯片简介2.读写时序3.控制字4.代码封装库5.原理图分析6.使用示例 1.芯片简介 截取自NXP的PCF8591芯片数据手册,我把重点关注部分划出来了,请务必自行阅读一遍数据手册! 2.读写时序 ①器件地址: Bit0决定是读还是写操作&…

Python 数据分析(PYDA)第三版(七)

原文:wesmckinney.com/book/ 译者:飞龙 协议:CC BY-NC-SA 4.0 附录 附录 A:高级 NumPy 原文:wesmckinney.com/book/advanced-numpy 译者:飞龙 协议:CC BY-NC-SA 4.0 此开放访问网络版本的《Pyt…

【Java】小白友好的SpringMVC开发基础学习笔记

目录 简介 Bean加载控制 设置请求映射路径 5种请求类型参数传递 JSON数据传递请求参数 响应 Jackson库处理JSON响应 REST风格 RESTful快速开发 拦截器 简介 Spring MVC是一个强大而灵活的Web应用程序框架,它通过使用MVC架构模式、注解和配置文件来实现请…

作业2.2

一.选择题 1、编写C程序一般需经过的几个步骤依次是( B ) A. 编辑、调试、编译、连接 B. 编辑、编译、连接、运行 C. 编译、调试、编辑、连接 D. 编译、编辑、连接、运行 2、所谓数据封装就是将一组数据和与这组数据有关操作组装在…

ctfshow web-77

开启环境: 先直接用伪协议获取 flag 位置。 c?><?php $anew DirectoryIterator("glob:///*"); foreach($a as $f) {echo($f->__toString(). );} exit(0); ?> 发现 flag36x.txt 文件。同时根目录下还有 readflag&#xff0c;估计需要调用 readflag 获…

魔改冰蝎 —— 绕过检测,自动生成免杀后门

为什么要魔改工具&#xff1f; 生成的代码很容易被监测 生成的后门很容易被杀软杀掉 了解冰蝎流量特征 开启http代理&#xff0c;数据经过BP抓包进行分析数据 冰蝎数据包分析&#xff1a; 1、三个请求头固定 AcceptAccept-LanguageUser-Agent&#xff08;内部有十个&a…

Web3行业研究逐步加强,“链上数据”缘何成为关注焦点?

据中国电子报报道&#xff0c;近日&#xff0c;由中关村区块链产业联盟指导&#xff0c;中国信息通信研究院牵头&#xff0c;欧科云链控股有限公司参与编写的《全球Web3产业全景与发展趋势研究报告&#xff08;2023年&#xff09;》正式发布。研究报告通过全面追踪国内外Web3产…

给mysql设置时区

每次重启MySQL服务器后&#xff0c;使用IDEA的database navigator连接都会出现这种情况 解决方式就是 命令行登录后 set global time_zone 8:00;嘿嘿把之前自家简书文章 给mysql设置时区 搬运过来了&#xff0c;方便查阅

01-Java基础语法

Java基础语法 1. 注释使用的技巧&#xff1a;注意点 2. 关键字2.1 概念2.2 第一个关键字class 3. 字面量区分技巧&#xff1a;扩展&#xff1a; 制表符&#xff1a; 4. 变量4.1 什么是变量&#xff1f;4.2 变量的定义格式4.2.1 格式详解4.2.2 常用的数据类型4.2.3 变量的注意事…

手册前端在线学习网站

电脑重装了&#xff0c;收藏夹没了&#xff0c;在线上记录一下吧&#xff0c;如果有别的好的地址&#xff0c;欢迎在评论区给我&#xff0c;我确认后会同步更新到这里&#xff1b; 前端进阶之旅_刷题-注意收费项目是作者自己的与本人分享无关 React 技术揭秘 Vue 技术揭秘 ES6 …

斗地主登录界面(JAVA图形化界面)设置

1.实现代码 import CodeUtil.CodeUtil; import domain.User;import javax.swing.*; import java.awt.*; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.util.ArrayList;public class LoginGame extends JFrame implements MouseListen…

MongoDB复制集实战及原理分析

文章目录 MongoDB复制集复制集架构三节点复制集模式PSS模式&#xff08;官方推荐模式&#xff09;PSA模式 典型三节点复制集环境搭建复制集注意事项环境准备配置复制集复制集状态查询使用mtools创建复制集安全认证复制集连接方式 复制集成员角色属性一&#xff1a;Priority 0属…

【数据分享】1929-2023年全球站点的逐月降雪深度数据(Shp\Excel\免费获取)

气象数据是在各项研究中都经常使用的数据&#xff0c;气象指标包括气温、风速、降水、能见度等指标&#xff0c;说到气象数据&#xff0c;最详细的气象数据是具体到气象监测站点的数据&#xff01; 之前我们分享过1929-2023年全球气象站点的逐月平均气温数据、逐月最高气温数据…

一副扑克牌一共54张,平均分成2份,求这2份都有2张A的概率。

这是一道高中数学题&#xff0c;此处介绍2个解法&#xff0c;第1个是我喜欢用的快速解法&#xff0c;第2个是公式解法。 1. 我的快速解法 第1张A随便在哪份&#xff0c; ①如果第2张A和第1张A在同一份(概率是26/53)&#xff0c;此时第3、4张牌必须在另一份&#xff0c;此时的…

力扣刷题-55.跳跃游戏

给你一个非负整数数组 nums &#xff0c;你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标&#xff0c;如果可以&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 class Solution { publ…

C语言入门到精通之练习37:输入3个数a,b,c,按大小顺序输出。

题目&#xff1a;输入3个数a,b,c&#xff0c;按大小顺序输出。 程序分析&#xff1a;利用指针方法。 实例 // Created by www.erdangjiade.com on 15/11/9. //# include<stdio.h>void swap(int *, int *); int main(void) {int a, b, c;int *p1, *p2, *p3;printf(&qu…

【鸿蒙】大模型对话应用(四):页面发起请求实现对话能力

Demo介绍 本demo对接阿里云和百度的大模型API&#xff0c;实现一个简单的对话应用。 DecEco Studio版本&#xff1a;DevEco Studio 3.1.1 Release HarmonyOS SDK版本&#xff1a;API9 关键点&#xff1a;ArkTS、ArkUI、UIAbility、网络http请求、列表布局、层叠布局 定义接…