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

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

一、面向对象

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

相关推荐
hetao17338371 小时前
2026-10-08 hetao1733837 的刷题记录
c++·算法
Frank_refuel2 小时前
【C++】智能指针
开发语言·c++
一只旭宝2 小时前
数据结构与算法复习手册:从写过,到讲清楚
开发语言·数据结构·c++·算法
十五年专注C++开发2 小时前
std::filesystem::exists 在有的win10系统抛异常原因分析
c++·文件系统·filesystem
hetao17338373 小时前
2026-10-07 hetao1733837 的刷题记录
c++·算法
daxiangxm3 小时前
GEO策略:让AI直接引用你的内容
开发语言·团队开发·运维开发·个人开发·数据库开发
longlongzihan4 小时前
前缀积与后缀积 —— LeetCode 238. 除了自身以外数组的乘积
开发语言·c++·leetcode
All for pursuit.4 小时前
【动态规划-1】121.买卖股票的最佳时机
数据结构·c++·算法·leetcode·动态规划
水饺编程4 小时前
第1章,[Win32 章节]:API 及 内存管理模式
c语言·c++·windows·visual studio
weixin_307779134 小时前
C++代码实现MATLAB中的cvpartition函数功能
开发语言·c++·算法·matlab