自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 收藏
  • 关注

原创 一个程序员的意识流

Readme:记录生活、工作、学习中自己的思考和想法,但是可能很杂乱的。目的为了提升自己BB的能力。

2023-03-09 19:18:56 297

原创 我的优秀书籍阅读单

一个程序员的技术沉淀之路

2021-10-21 23:12:52 272

原创 第七章:Qt 实践

在深入了解 Qt 框架的各个模块之后,本章将通过几个实际案例,展示如何将 Qt 的强大功能应用于真实项目开发中。我们将结合界面设计、信号与槽机制、网络通信和数据处理等内容,探索 Qt 在桌面应用程序开发中的实际应用。

2025-03-11 01:36:40 554

原创 第6章 浅尝Qt附加模块(不同版本有区别)

Qt 的 Network 模块(QtNetwork)为网络通信提供了强大的支持,适用于开发需要 HTTP 请求、Socket 连接、文件传输等功能的应用程序。本章将详细讲解 Qt Network 模块的核心功能和实际应用,帮助开发者构建高效、稳定的网络应用。

2025-03-11 01:36:01 314

原创 第5章 浅尝Qt其他核心模块

可以通过继承QWidget创建自定义窗口。protected:5.3 常用控件通过继承QWidget或其他组件类扩展控件功能。

2025-03-11 01:35:21 401

原创 第4章 深入Qt核心模块

通过继承QWidget实现自定义绘制。

2025-03-11 01:34:51 548

原创 第3章 深入Qt子系统

Qt 的 Core 模块(QtCore)是整个框架的基石,提供了事件处理、线程管理、数据类型、元对象系统等核心功能。本章将深入剖析 Core 模块的主要功能及其在实际开发中的应用,通过示例和实战帮助您全面掌握这些技术。

2025-03-11 01:34:17 446

原创 第2章 Qt常用界面组件

Q_OBJECTpublic:signals:qDebug() << "收到信号:" << value;// 发射信号return 0;signals和slots关键字分别定义信号和槽。使用emit关键字发射信号。2.5 动态界面调整与事件处理。

2025-03-11 01:33:39 580

原创 第一章:Qt基础

Qt 是一个功能强大的跨平台 C++ 应用程序开发框架,其直观的 API 和卓越的性能,使其成为开发桌面应用、嵌入式设备软件乃至移动应用的首选工具。本章将从基础入手,介绍 Qt 的发展历史、环境搭建,以及通过一个简单的例子引导您迈出使用 Qt 的第一步。

2025-03-11 01:33:06 737

原创 第四章:系统设计的基础理论

在软件架构设计的过程中,理论基础是非常重要的,它不仅帮助我们理解系统如何在整体上运行,还为系统的可扩展性、可维护性和高效性提供了设计原则。在本章中,我们将讨论系统设计的基础理论,包括负载均衡、高可用性、一致性与可用性的权衡、数据库设计与分区策略、高并发系统设计、异步与同步设计模型以及分布式系统与微服务架构等方面。数据库设计是系统设计的一个关键部分,尤其在大规模系统中,如何有效地管理和存储数据是至关重要的。高并发系统设计的核心目标是保证系统在处理大量请求时,仍然能够保持稳定性、响应速度和资源的高效利用。

2025-03-11 01:31:44 389

原创 第三章:设计模式

设计模式(Design Patterns)是软件开发中经过验证的、可以重复使用的解决方案,用于解决在软件设计过程中遇到的常见问题。设计模式并非具体的代码实现,而是一种在特定场景下如何构建和组织类、对象或方法的高级抽象,它帮助开发人员应对复杂性和变化。设计模式有助于提高软件设计的质量、重用性和可维护性。通过使用设计模式,开发人员可以避免“重新发明轮子”,并且能够有效应对系统设计中的常见挑战,如模块间耦合过度、代码重复、可扩展性差等。提高开发效率:设计模式为解决特定问题提供了成熟的方案,避免从头开始设计。

2025-03-11 01:30:42 925

原创 第二章:OOD(面向对象设计)

抽象是将复杂的现实世界问题通过简化和建模,提取出本质的特征,忽略不必要的细节。在OOD中,抽象通常通过类和接口来实现。抽象可以帮助减少系统的复杂性,提高设计的可维护性。

2025-03-11 01:29:56 879

原创 第一章:系统设计概述

系统设计(System Design)是指在软件工程中,根据需求和技术约束,设计和规划软件系统结构的过程。它不仅仅是编码实现的前置工作,更是软件系统整体架构、各个组件如何协作、如何满足可扩展性、可靠性、性能等质量属性的设计过程。系统设计的目标是为了满足特定的业务需求,同时保持系统的可维护性、灵活性和高效性。一个优秀的系统设计,能够在面对未来业务需求的变化时,依然能够灵活应对。它要求架构师深刻理解业务背景、需求分析、技术选型、性能要求等各方面因素,并把这些因素融合到系统架构的设计当中。系统设计的重要性。

2025-03-10 22:01:37 1584

原创 第十章:C++ 标准

本章详细介绍了 C++11 至 C++23 各版本的重要特性,帮助读者理解现代 C++ 的演进历程和新特性如何提升代码的可读性、效率与安全性。本章将详细介绍 C++11、C++14、C++17、C++20 和 C++23 的重要特性及其对 C++ 开发的影响。C++11 标准是 C++ 语言历史上的一次重大更新,它引入了大量的新特性,使得 C++ 语言更加现代化和简洁。C++20 引入了诸多新特性,最为重要的是概念和协程的支持,显著提高了 C++ 编程的表达能力和易用性。

2025-03-10 21:51:50 935

原创 第九章:系统设计

本章从嵌入式开发到分布式系统,全面探讨了 C++ 在系统设计中的实际应用。本章不仅提供了具体的实现案例,还分享了设计的核心思想,为读者的 C++ 系统开发实践奠定了坚实基础。C++ 在系统设计领域具有广泛应用,其性能和灵活性使其在嵌入式系统、操作系统开发、高性能服务器以及分布式系统中占据核心地位。本章将介绍 C++ 在系统设计中的主要应用场景、设计原则以及具体的实现案例。C++ 在高性能服务器设计中广泛应用,尤其在高并发和低延迟的场景下。高效的性能监测和调试工具是系统设计成功的关键。

2025-03-10 21:50:54 862

原创 第八章:C++ 实践

本章从高性能计算、网络编程、多线程开发到游戏引擎构建,全面展示了 C++ 在不同领域的强大应用能力。通过真实案例和实用工具的结合,读者可以更好地理解如何将 C++ 的理论知识应用到实际开发中,为构建高性能、可靠的软件打下坚实基础。本章以实际开发场景为导向,展示 C++ 在不同领域的应用,包括高性能计算、网络编程、多线程开发和游戏引擎构建。通过真实案例和最佳实践,读者将更好地掌握 C++ 在工程实践中的核心能力。C++ 在游戏开发中占据核心地位,其性能和内存控制能力使其成为构建游戏引擎的最佳选择。

2025-03-10 05:30:00 714

原创 第七章:Clang

作为现代 C++ 编译器的代表之一,Clang 提供了卓越的编译性能、详细的错误报告以及可扩展的工具支持。本章将系统探讨 Clang 的功能和在 C++ 开发中的应用。本章详细介绍了 Clang 的核心功能及其在 C++ 开发中的广泛应用。从编译与优化到工具链的集成,Clang 提供了全面的开发支持。通过深入理解和应用 Clang,开发者不仅能提升编译效率,还能利用其工具链打造高质量、现代化的 C++ 项目。

2025-03-10 00:14:06 940

原创 第六章:Doxygen

本章系统讲解了 Doxygen 的功能和使用方法,从配置文件生成到高级功能,以及如何集成到构建流程中。通过 Doxygen,可以显著提高代码的可读性和维护性,为项目提供专业的 API 文档。掌握 Doxygen 的使用,能为团队协作和长期项目维护提供强有力的支持。Doxygen 是一个强大的文档生成工具,专为程序代码设计,可将源代码中的注释提取并转换为多种格式的文档,如 HTML、PDF 和 CHM。本章将全面介绍如何在 C++ 项目中使用 Doxygen,提高代码可读性和项目文档化程度。

2025-03-10 00:13:29 908

原创 第五章:CMake

CMake 是一个跨平台的构建系统生成工具,在现代 C++ 开发中广泛使用。它可以帮助开发者组织代码、管理依赖、配置构建环境,并生成适合目标平台的构建文件(如 Makefile、Visual Studio 项目文件)。本章从基础构建到复杂项目管理,系统地介绍了 CMake 的核心功能。通过学习本章内容,读者可以高效组织 C++ 项目、管理依赖,并构建跨平台可移植的代码。熟练掌握 CMake 是现代 C++ 开发者的基本技能,为构建大型项目和协作开发奠定了坚实基础。

2025-03-10 00:12:56 701

原创 第四章:高级主题

第四章全面覆盖了C++的高级主题,从底层内存模型到元编程,再到并发、多态和泛型设计。通过这些知识,读者将能够优化程序性能,解决复杂问题,同时提高代码的可维护性和扩展性。本章强调理论与实践结合,帮助开发者理解高级特性的应用场景和最佳实践。

2025-03-10 00:11:48 861

原创 第三章:类设计者的工具

第三章围绕C++的类设计工具展开,从基础的封装与构造析构,到高级的模板编程与多态,全面解析了设计良好类的重要技术与最佳实践。通过本章的学习,读者不仅能掌握构建复杂类结构的能力,还能深入理解C++的面向对象特性及其独特的灵活性。

2025-03-10 00:11:04 478

原创 第二章:C++标准库

第二章从C++标准库的基础设施入手,帮助读者了解并熟悉现代C++程序开发中的常用工具和组件。通过标准库的学习,读者可以掌握高效、安全、便捷的编程实践方法,为实现复杂功能和更高性能的系统设计提供必要的知识储备。

2025-03-10 00:09:55 802

原创 运维技术栈

掌握以上技术栈需要持续实践,建议通过项目实战(如搭建K8s集群、设计监控体系)加深理解。同时关注社区动态(如CNCF项目)以保持技术敏感度。运维工程师的技术栈涵盖广泛,涉及系统管理、自动化、监控、云平台、容器化等多个领域。

2025-03-10 00:07:45 680

原创 第一章:C++基础

通过第一章,读者将掌握C++语言的基础语法与运行机制,并为后续章节(如面向对象编程、高级主题)打下扎实的理论和实践基础。这一章强调由浅入深,通过精心设计的示例帮助新手逐步熟悉C++的核心概念,同时兼顾实际开发中的常见问题。

2025-03-10 00:06:34 347

原创 目录 《架构师——设计能力与《System Design Insider》实践笔记》

架构师——设计能力与《System Design Insider》实践笔记》

2024-11-24 12:39:30 514

原创 目录 《Qt精通之路》

1.3 第一个Qt程序:Hello World。2.5 高级组件:图形视图与自定义绘制。6.3 HTTP通信与REST API。8.5 从Qt 5迁移到Qt 6的实践。2.2 输入组件:按钮、文本框、滑块。2.3 数据显示组件:表格、树状视图。6.5 WebSocket与实时通信。2.4 容器组件:布局管理与容器类。7.1 案例一:简单的文本编辑器。7.5 Qt实践总结与优化建议。7.2 案例二:网络聊天应用。4.5 图像处理与格式支持。5.5 本地化与国际化支持。1.1 Qt的起源与特点。

2024-11-24 02:57:25 391

原创 目录:《C++全栈知识体系》

2.7 多线程编程(std::thread与std::async)1.2 Hello, World!- 第一个C++程序。10.4 C++20:概念、协程与更强大的库。10.1 C++11:现代 C++ 的开端。4.6 SFINAE与概念(C++20)7.7 示例项目:Clang 工具链集成。3.3 拷贝控制:拷贝构造与拷贝赋值。10.2 C++14:小的改进与修复。10.3 C++17:更多现代化特性。6.7 示例项目:生成完整的文档。10.5 C++23:渐进式增强。7.3 Clang 的工具生态。

2024-11-21 00:35:28 569 1

原创 C++模板重要概念与注意事项

C++模板的概念

2024-04-28 23:36:17 1068 2

原创 C++的初始化与赋值

初始化:对象在创建时(也就是定义时)获得了一个特定的值。赋值:把对象的当前值擦除,而以一个新值来替代。

2023-12-31 13:46:29 549

原创 Drogon源码剖析

Drogon是一个跨平台框架,它支持Linux,也支持macOS、FreeBSD,OpenBSD,HaikuOS,和Windows。

2023-11-07 17:19:11 755

原创 C++ STL快速应用

STL容器有共同的操作接口,包括初始化操作、判空、查看大小、比较元素、销毁、交换,这些操作都是一样的接口。对于访问遍历元素(增删改查),都可以使用迭代器(正向)进行操作,大部分容器支持反向迭代器。另外像Array、vector、string、map、unordered_map支持下标[]操作访问操作元素。

2023-08-03 11:07:16 320

原创 开心消消乐题解

给定一个N行M列的二维矩阵,矩阵中每个位置的数字取值为0或1,矩阵示例如:1 1 0 00 0 0 10 0 1 11 1 1 1现需要将矩阵中所有的1进行反转为0,规则如下:当点击一个1时,该1被反转为0,同时相邻的上、下、左、右,以及左上、左下、右上、右下8个方向的1(如果存在1)均会自动反转为0;进一步地,一个位置上的1被反转为0时,与其相邻的8个方向的1(如果存在1)均会自动反转为0;

2023-03-13 19:39:26 1467

原创 topK算法实现

显然的思路是选择排序算法将数据排序后输出后(前)K个即可。但是这时间复杂度最快也只能是期望nO(lg n).2.排除剩下K个数据再通过普通排序输出K个数据。简述:选择数据中前k大(或小)的数。1.利用快排思路,每次排除一半的数据。

2023-02-28 22:07:59 218

原创 创建一个docker基础镜像

创建一个非基于其它镜像的基础镜像

2023-01-16 11:01:13 526

原创 在Linux内核空间中计算MD5值

使用Crypto API。

2022-11-21 15:19:56 996

原创 Windows rust开发环境安装

使用微软msvc包,不需要安装visual studio;不使用gnu ABI,经常报错

2022-09-26 02:23:32 592

原创 Windows c/c++开发环境安装以及配置VSCode

c/c++开发环境安装以及配置VSCode

2022-09-25 21:52:29 2502

原创 C++——模板参数类型与匹配

变量c的情况是两种构造函数都匹配的,但是优先匹配类模板参数。

2022-08-26 14:46:41 732

原创 英文单词打字练习与学习

仅支持电脑版,链接: 支持多种单词词库。

2022-08-23 19:19:44 705

原创 C——内存对齐与数据对齐

CPU以固定的长度如4B、8B访问内存,所以访存指令一般只需要地址参数,不需要长度参数(位、1字节、2字节有专门的访问指令),这种情况下,内存就可以看出由一个个的内存块组成,每次也是对一个内存块的访问。内存对齐是为了CPU能一次访问到所需的变量(数据),数据对齐的目的除了这一点之外,还有的就是确保各个类型的数据能刚好存满。.........

2022-08-02 16:20:07 268

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除