软件开发方法:复用与扩展

软件开发方法:复用与扩展

一、面向对象

封装 工程上的意义:屏蔽细节,隔离变化 public、protected、private

继承 工程上的意义:复用

多态工程上的意义:高内聚,低耦合 ------ 面向对象核心

二、进一步认识

  • 遵循已有框架规则,搭建程序,学习框架使用
  • 遵循框架提供的接口和调用规则
  • 扩展别人的功能
cpp 复制代码
#include "QtWidgetsApplication.h"
#include <QtWidgets/QApplication>
#include <QLabel>
#include "stdlib.h"

class NewLabel :public QLabel {
public:
  NewLabel(QString str) :QLabel(str) {

  }
  void runCommand() {
	system("notepad");
  }
};

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

	NewLabel label("a");
	label.show();
	label.runCommand();

    return a.exec();
}

上面是对Qt中QLabel扩展的举例


推荐一个零声学院项目课,个人觉得老师讲得不错,分享给大家:
零声白金学习卡(含基础架构/高性能存储/golang云原生/音视频/Linux内核)
https://xxetb.xet.tech/s/VsFMs

相关推荐
冠品科技-小程序开发27 分钟前
做实体的,盲盒玩法别只停留在线下
小程序·软件构建·个人开发·软件需求
水饺编程34 分钟前
第5章,[Win32 章节] :圆角矩形教学插图绘制程序
c语言·c++·windows·visual studio
Existence_Time1 小时前
CSP 考前复习
c++
zerwave1 小时前
从零实现简化 DDS 完整技术文档(含模块作用与详细注释)
linux·c++·机器人
2501_915106321 小时前
第一次开发 iPhone App,可能碰到的问题,解决办法
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
Dream Cosmos1 小时前
C++ 多态下篇:虚函数表、动态绑定与多态底层原理
开发语言·c++
_Twink1e15 小时前
openJiuwen 实训营 Day 1 · WorkSwarm 入门教程
开发语言·c++·openjiuwen
dong_junshuai15 小时前
每天一个开源项目#87 fmt:24.5K Stars 的 C++ 格式化核心
c++·开源·github
大丑哥16 小时前
QT QML 中实现高亮功能
qt
雪的季节16 小时前
Multisim14.0的详细中文安装步骤【附安装包】
c++