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

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

一、面向对象

封装 工程上的意义:屏蔽细节,隔离变化 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

相关推荐
dengyuezhe806015 小时前
《C++ 异常机制与智能指针:从原理到实现》
android·java·c++
aerror15 小时前
如何解决brew安装编译不过的问题
c++
z2005093015 小时前
【C++学习】C++ 类型转换深度解析:从 C 风格缺陷到 C++ 四种安全转换的思想内核
c语言·c++·学习
凡人叶枫16 小时前
Effective C++ 条款32:确定你的 public 继承塑模出 is-a(是一种)关系
java·linux·开发语言·c++·嵌入式开发
我喜欢就喜欢16 小时前
C++ 连接 Ollama 本地大模型:从原生 HTTP 调用到高性能封装实践
开发语言·c++·http
Hello-FPGA16 小时前
Xilinx KU040 FPGA Camera Link 图像采集
c++·fpga开发
金色熊族16 小时前
Qt绘制图形时自定义点划线间隔的办法--setDashPattern
qt
laplaya16 小时前
C++大型项目组件通信与依赖管理实践
c++·log4j·apache
春栀怡铃声16 小时前
【C++修仙录03】进阶篇:多态
c++
小灰灰搞电子16 小时前
C++ boost::container 详解:高性能容器库完全指南
开发语言·c++·boost