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

找个网站怎么这么难建设通app官方下载

找个网站怎么这么难,建设通app官方下载,汕头seo计费管理,有什么好的建站公司2023年8月26日#xff0c;周六上午 目录 概述一个简单的例子用单一职责原则来设计一个简单的学生管理系统 概述 单一职责原则#xff08;Single Responsibility Principle#xff0c;SRP#xff09;#xff0c;它是面向对象设计中的一个基本原则。 单一职责原则的核心思…2023年8月26日周六上午 目录 概述一个简单的例子用单一职责原则来设计一个简单的学生管理系统 概述 单一职责原则Single Responsibility PrincipleSRP它是面向对象设计中的一个基本原则。 单一职责原则的核心思想是一个类应该只有一个引起它变化的原因。 换句话说一个类应该只负责一项功能或职责。 这样做的好处是当需求发生变化时只有与该功能相关的类需要进行修改而不会影响其他不相关的功能。 一个简单的例子 class FileManager { public:void readFile(std::string filename) {// 读取文件的代码逻辑}void writeFile(std::string filename) {// 写入文件的代码逻辑}void deleteFile(std::string filename) {// 删除文件的代码逻辑}void encryptFile(std::string filename) {// 加密文件的代码逻辑}void compressFile(std::string filename) {// 压缩文件的代码逻辑} };在这个示例中FileManager类负责文件的读取、写入、删除、加密和压缩等操作。 这个类违反了单一职责原则因为它承担了多个不同的功能即文件操作和文件处理。 为了遵循单一职责原则我们可以将文件操作和文件处理分离为两个独立的类 class FileManager { public:void readFile(std::string filename) {// 读取文件的代码逻辑}void writeFile(std::string filename) {// 写入文件的代码逻辑}void deleteFile(std::string filename) {// 删除文件的代码逻辑} };class FileProcessor { public:void encryptFile(std::string filename) {// 加密文件的代码逻辑}void compressFile(std::string filename) {// 压缩文件的代码逻辑} };现在FileManager类负责文件的基本操作而FileProcessor类负责对文件进行加密和压缩等处理操作。这样每个类都只有一个单一的职责使得代码更加清晰、可维护和可扩展。 总结来说单一职责原则要求将不同的职责分离到不同的类中以确保每个类只负责一项功能。这样可以提高代码的可读性、可维护性和可扩展性减少代码之间的耦合。 用单一职责原则来设计一个简单的学生管理系统 使用单一职责原则来设计一个简单的学生管理系统可以将功能分解为以下几个类 Student类表示学生对象包含学生的基本信息如姓名、学号、年龄以及相关操作如获取学生信息、修改学生信息。StudentDatabase类负责学生信息的存储和管理包含增加学生、删除学生、查找学生等操作。StudentUI类负责与用户交互显示菜单选项接收用户输入并调用StudentDatabase类中的方法来执行相应的操作。 #include iostream #include vector #include stringclass Student { private:std::string name;int studentId;int age;public:Student(std::string name, int studentId, int age): name(name), studentId(studentId), age(age) {}std::string getName() const {return name;}int getStudentId() const {return studentId;}int getAge() const {return age;}void updateName(std::string newName) {name newName;}void updateAge(int newAge) {age newAge;} };class StudentDatabase { private:std::vectorStudent students;public:void addStudent(const Student student) {students.push_back(student);}void removeStudent(int studentId) {for (auto it students.begin(); it ! students.end(); it) {if (it-getStudentId() studentId) {students.erase(it);break;}}}Student findStudent(int studentId) const {for (const auto student : students) {if (student.getStudentId() studentId) {return student;}}// 如果找不到对应的学生则返回一个空的Student对象return Student(, -1, -1);}std::vectorStudent getAllStudents() const {return students;} };class StudentUI { private:StudentDatabase studentDB;public:void displayMenu() {std::cout 学生管理系统 std::endl;std::cout 1. 添加学生 std::endl;std::cout 2. 删除学生 std::endl;std::cout 3. 查找学生 std::endl;std::cout 4. 显示所有学生 std::endl;std::cout 0. 退出 std::endl;}void addStudent() {std::string name;int studentId, age;std::cout 请输入学生姓名: ;std::cin name;std::cout 请输入学生学号: ;std::cin studentId;std::cout 请输入学生年龄: ;std::cin age;Student student(name, studentId, age);studentDB.addStudent(student);std::cout 成功添加学生! std::endl;}void removeStudent() {int studentId;std::cout 请输入要删除的学生学号: ;std::cin studentId;studentDB.removeStudent(studentId);std::cout 成功删除学生! std::endl;}void findStudent() {int studentId;std::cout 请输入要查找的学生学号: ;std::cin studentId;Student student studentDB.findStudent(studentId);if (student.getStudentId() ! -1) {std::cout 找到学生: student.getName() std::endl;std::cout 学号: student.getStudentId() std::endl;std::cout 年龄: student.getAge() std::endl;} else {std::cout 未找到该学生! std::endl;}}void displayAllStudents() {std::vectorStudent students studentDB.getAllStudents();if (students.empty()) {std::cout 暂无学生信息! std::endl;} else {std::cout 所有学生信息: std::endl;for (const auto student : students) {std::cout 姓名: student.getName() , ;std::cout 学号: student.getStudentId() , ;std::cout 年龄: student.getAge() std::endl;}}}void run() {int choice;do {displayMenu();std::cout 请输入选项: ;std::cin choice;switch (choice) {case 1:addStudent();break;case 2:removeStudent();break;case 3:findStudent();break;case 4:displayAllStudents();break;case 0:std::cout 退出程序! std::endl;break;default:std::cout 无效的选项请重新输入! std::endl;}} while (choice ! 0);} };int main() {StudentUI studentUI;studentUI.run();return 0; }
http://www.yutouwan.com/news/152509/

相关文章:

  • 寻找东莞微信网站建设个人官网网站源码
  • 网站后台设计教程买衣服app排行榜前十名
  • 网站系统定制巴中做网站
  • 网站制作 推荐新鸿儒北京手机站建站
  • 网站建设前十名网页制作费用预算
  • 网站的设计方法工商网站查询企业
  • 网站建设与管理课程实训阿里巴巴logo高清
  • 天河网站建设技术企业网站开发公司
  • 三明商城网站开发设计网站系统建设技术服务费
  • 网站封面制作女和女做网站
  • 如何做外贸品牌网站暴雪回归
  • 逆袭做富豪官方网站wordpress 制作app
  • app推广渠道有哪些优化seo方案
  • 微信分销网站建设平台家具网站策划书
  • 农畜产品销售平台的网站建设旅游网站建设推广
  • 江门制作网站公司如何查询网站开发商
  • 建设国际互联网网站wordpress 使用ip访问
  • 温州网站制作要多少钱百度网页制作网站建设
  • 免费的网站域名查询门户网站定制开发
  • 湘阴网站设计wordpress的nginx伪静态规则
  • 大学生心理咨询网站建设论文做网站架构的软件
  • 网站建设免wordpress在线预览
  • 专业视频网站开发公司一元夺宝网站制作视频
  • 自己做网站推广html基础菜鸟教程
  • 做网站的那些事wordpress网站合并
  • 网站开发公司福建开发公司更换物业公司的请示
  • 网络和网站的区别dede网站更新如何同步腾讯微博更新
  • 电子商务网站权限管理问题镇平微网站开发
  • 对网站设计的摘要南京省住房和城乡建设厅网站
  • 网站开发 0755上海有哪些科技公司