甘光宗
码龄7年
求更新 关注
提问 私信
  • 博客:152,660
    社区:1
    152,661
    总访问量
  • 110
    原创
  • 335
    粉丝
  • 61
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:上海市
加入CSDN时间: 2018-04-29
博客简介:

weixin_42101997的博客

查看详细资料
个人成就
  • 获得474次点赞
  • 内容获得24次评论
  • 获得622次收藏
  • 代码片获得523次分享
  • 原力等级
    原力等级
    4
    原力分
    559
    本月获得
    2
创作历程
  • 6篇
    2025年
  • 54篇
    2024年
  • 1篇
    2023年
  • 1篇
    2021年
  • 13篇
    2020年
  • 8篇
    2019年
  • 27篇
    2018年
成就勋章
TA的专栏
  • 算法
    1篇
  • Windows
    6篇
  • qml
    1篇
  • 业余
    1篇
  • Qt
    40篇
  • C++
    32篇
  • 客户端
    14篇
  • js
    1篇

TA关注的专栏 1

TA关注的收藏夹 0

TA关注的社区 2

TA参与的活动 0

创作活动更多

开源数据库 KWDB 社区征文大赛,赢取千元创作基金!

提交参赛作品,有机会冲刺至高2000元的创作基金,快来参与吧!

去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

前端 技术栈

前端 技术栈。
原创
发布博客 2025.03.28 ·
409 阅读 ·
3 点赞 ·
2 评论 ·
5 收藏

c++程序员最大的挑战

等),标准库非常庞大,语法规则复杂,学习曲线陡峭。C++11/14/17/20/23 还不断引入新特性,使得掌握 C++ 变得更具挑战。下面是 C++ 程序员在实际开发中最常遇到的。,但写出高效的 C++ 代码却不容易,涉及。,但不同平台的 API 和标准库可能不兼容。),但这也是最容易出错的地方,导致。C++ 程序员面临的挑战很多,涉及。支持,但同步机制复杂,容易出现。,以及如何应对它们的策略。C++ 的一个核心优势是。C++ 项目往往涉及复杂的。C++ 提供了强大的。C++ 代码容易变得。
原创
发布博客 2025.03.19 ·
727 阅读 ·
11 点赞 ·
0 评论 ·
14 收藏

为什么 有些 c++代码 用msvc 可以编译通过 但是 用clang 编译器 编译 不通过

为什么 有些 c++代码 用msvc 可以编译通过 但是 用clang 编译器 编译 不通过这是因为 MSVC(Microsoft Visual C++) 和 Clang 在 C++ 语言的实现上有一些不同的编译规则、标准支持、扩展特性以及默认行为。以下是常见的几个原因:不同的编译器对 C++ 标准(如 C++11、C++14、C++17、C++20)的实现细节可能会有所不同。例如:示例(MSVC 允许但 Clang 拒绝):cpp复制编辑Clang 可能会警告“指针越界访问未定义行为”,而 MSV
原创
发布博客 2025.03.12 ·
561 阅读 ·
23 点赞 ·
0 评论 ·
8 收藏

cmake 可使用的构建系统

cmake可使用的构建系统。
原创
发布博客 2025.01.20 ·
973 阅读 ·
17 点赞 ·
0 评论 ·
11 收藏

cmake构建问题汇总

2.vscode+cmakeninja原生构建失败。qcreator+cmake+ninja生成失败。1.构建vs工程没有指定版本的地方。cmake构建问题汇总。cmake脚本有问题。
原创
发布博客 2025.01.18 ·
187 阅读 ·
2 点赞 ·
0 评论 ·
0 收藏

ninja 优点

Ninja的目标是保持构建过程的最小开销,特别是在构建规则和依赖关系方面。它非常快速,尤其在增量构建时,它只会重新构建那些实际需要的文件,而不是从头开始构建整个项目。Ninja是一个高效的构建系统,它有许多优点,尤其适用于大规模项目或复杂的构建过程。Ninja非常擅长增量构建,只会重新构建那些自上次构建后发生变化的部分,而不会浪费时间重新构建没有变化的部分。总结来说,Ninja的最大优点是其高效、低开销和优异的增量构建性能,非常适合需要快速构建和支持并行化的大型项目。Ninja的构建文件(
原创
发布博客 2025.01.18 ·
172 阅读 ·
6 点赞 ·
0 评论 ·
2 收藏

原生开发vs混合开发

原生开发指的是使用平台特定的编程语言和工具(如 Android 使用 Java/Kotlin,iOS 使用 Swift/Objective-C)来开发应用程序。这些应用直接与操作系统交互,能够使用操作系统提供的全部功能。
原创
发布博客 2024.12.20 ·
840 阅读 ·
19 点赞 ·
0 评论 ·
11 收藏

qcreator 调试原理

Qt Creator 调试的原理是通过集成现有的调试工具(如 GDB 或 LLDB),借助调试符号和进程控制技术,实现对 Qt 应用程序的实时调试。开发者可以通过 IDE 提供的界面设置断点、单步执行、查看变量、调试内存等,从而定位和修复代码中的问题。Qt Creator 提供了友好的界面、丰富的调试功能,并支持调试多种类型的 Qt 应用程序,包括 C++、QML、以及跨平台的嵌入式应用。
原创
发布博客 2024.12.13 ·
580 阅读 ·
5 点赞 ·
0 评论 ·
7 收藏

qt jom

jom的核心优势是并行构建和与 Qt 的深度集成,特别适合在 Windows 平台上快速构建 Qt 项目。它是nmake的高性能替代品,具有易用性和显著的性能提升。在开发 Qt 应用时,通过结合qmake和jom,可以大幅提高开发效率。
原创
发布博客 2024.12.10 ·
1219 阅读 ·
13 点赞 ·
0 评论 ·
18 收藏

qmake vs cmake

qmake和CMake都是常见的构建工具,虽然它们都支持 Qt 项目的构建,但它们在功能、灵活性和用途上有显著的差异。下面是qmake和CMake的比较,帮助你理解它们各自的优缺点,选择最适合的工具。
原创
发布博客 2024.12.10 ·
963 阅读 ·
22 点赞 ·
0 评论 ·
18 收藏

qmake 的优势

qmake与 Qt 紧密集成:自动处理 MOC、UIC 和资源文件,简化 Qt 项目的构建。跨平台支持:支持 Windows、macOS、Linux 等多个平台的构建。自动化构建:简化构建过程,自动生成构建文件并处理依赖关系。灵活的配置选项:支持多种构建配置(如 Debug 和 Release),以及静态和动态库的选择。与 Qt Creator 集成:与 Qt Creator IDE 完美集成,提供图形化界面和一体化开发体验。这些优势使得qmake。
原创
发布博客 2024.12.10 ·
882 阅读 ·
25 点赞 ·
0 评论 ·
14 收藏

Qt 的构建系统

Qt 构建系统(无论是qmake还是CMake跨平台支持,简化了多平台开发。与 Qt 特性紧密集成,自动处理 MOC、UI 文件、资源文件等。灵活的配置与定制,适应不同项目需求。与 IDE 深度集成,提供便捷的开发体验。自动化构建和持续集成支持。模块化支持,简化依赖管理。这些优点使得 Qt 的构建系统成为开发高质量、跨平台 Qt 应用的强大工具。
原创
发布博客 2024.12.10 ·
1045 阅读 ·
18 点赞 ·
0 评论 ·
21 收藏

Ninja

Ninja 是一个非常快速和高效的构建系统,尤其适合与 CMake 配合使用。在处理大型项目时,Ninja 的增量构建特性可以大大提高构建效率。你可以通过 CMake 配置 Ninja 构建系统,并利用其并行化功能加速构建过程。
原创
发布博客 2024.12.10 ·
604 阅读 ·
25 点赞 ·
0 评论 ·
18 收藏

MQ 队列 的 通信过程

生产者连接到消息队列系统,生成并发送消息到队列中。消息队列系统存储消息(内存或磁盘)。消费者连接到消息队列,拉取或接收消息。消费者处理消息,并根据设置发送确认(ACK)或重试。如果有多个消费者,它们可以组成一个消费者组,共同消费消息,确保负载均衡。消息队列系统提供了可靠的消息传递、异步处理、负载均衡等特性,是分布式系统、微服务架构中常用的组件。如果你有更具体的需求或使用场景,可以告诉我,我可以进一步帮助你设计和优化消息队列的通信流程。
原创
发布博客 2024.12.05 ·
892 阅读 ·
15 点赞 ·
0 评论 ·
15 收藏

MQ消息队列实现 方案

选择合适的 MQ 消息队列实现方案需要根据具体的业务需求、性能要求、可靠性需求来决定。现有的框架如RabbitMQKafkaActiveMQ和RocketMQ已经能满足大多数常见的消息队列应用场景。如果现有系统的功能不能满足你的需求,可以考虑自建消息队列系统,但这通常涉及更多的工程量和维护成本。如果你有特定的需求或遇到技术难题,可以详细说明,我会帮你提供更有针对性的解决方案!
原创
发布博客 2024.12.05 ·
629 阅读 ·
12 点赞 ·
0 评论 ·
11 收藏

低端设备(如小内存、低端处理器的设备)的支持方案

针对(如小内存、低端处理器的设备)的支持方案,关键在于优化应用程序的性能、降低资源消耗,并且确保能够在有限的硬件资源下提供良好的用户体验。以下是一些有效的支持策略和解决方案,帮助你在开发过程中确保低端设备的兼容性和性能优化。
原创
发布博客 2024.12.04 ·
572 阅读 ·
19 点赞 ·
0 评论 ·
8 收藏

低内存 用户支持

为了支持低内存用户,你需要在设计和开发过程中考虑优化内存使用、减少资源消耗、提供灵活的内存管理策略和优化程序性能。通过精简代码、懒加载、内存映射等技术,配合合适的内存检测和优化策略,可以在低内存环境下提供良好的用户体验。对于 4GB 内存的用户,支持低内存优化和提供合适的兼容性选项是非常重要的。如果你的目标用户包括这些低内存设备的用户,务必确保你的应用程序在这类硬件配置下能够平稳运行。
原创
发布博客 2024.12.04 ·
632 阅读 ·
7 点赞 ·
0 评论 ·
17 收藏

c++ 检测内存泄漏的工具

Valgrind和Memcheck是非常强大的工具,适用于 Linux 和 macOS。和是高效的内存错误检测工具,适用于 GCC 和 Clang 编译器。是 Windows 环境下的好选择,集成在 Visual Studio 中。Deleaker和gperftools提供图形化界面和深入的内存分析,适合更复杂的项目。根据你的开发环境和项目需求,选择合适的工具进行内存泄漏检测,确保程序的稳定性和性能。
原创
发布博客 2024.12.04 ·
1083 阅读 ·
17 点赞 ·
0 评论 ·
21 收藏

如何避免 内存碎片化

避免内存碎片化的关键是减少频繁的内存分配和释放,合理地使用内存池、对象池、批量分配、STL 容器等技术,控制内存使用模式。通过合理设计程序结构、使用自定义分配器、合适的内存管理方式,可以大幅减少内存碎片化,提升程序的性能和稳定性。
原创
发布博客 2024.12.04 ·
675 阅读 ·
7 点赞 ·
0 评论 ·
19 收藏

写 c++ 需要注意什么

编写 C++ 代码时,需要综合考虑内存管理、代码效率、安全性、异常处理等方面。C++ 是一门非常强大的语言,但也需要开发者在编写代码时保持细心和耐心。遵循现代 C++ 编程范式、利用 STL 和智能指针、保持代码简洁和清晰,能帮助你写出更加健壮和高效的代码。
原创
发布博客 2024.12.04 ·
915 阅读 ·
14 点赞 ·
0 评论 ·
15 收藏
加载更多