TechBlog
首页分类标签搜索关于
← 返回标签列表
加载中...

© 2025 TechBlog. All rights reserved.

#标签

共 2214 篇文章
仓颉Option类型的空安全处理深度解析

仓颉Option类型的空安全处理深度解析

摘要仓颉语言通过Option类型机制从根本上解决了空指针异常问题。Option类型将"可能没有值"的语义编码到类型系统中,强制开发者处理空值情况。其设计采用Union类型,包含Some和None两个变体,分别表示有值和无值状态。Option类型支持丰富的函数式操作,如map、flatMap、filter等,使处理可能为空的值变得优雅安全。通过将运行时错误转化为编译时错误,Option类型消除了空指针异常,同时提高了代码的清晰度和可靠性。

时间:12/24/2025

算法竞赛从入门到国奖算法基础入门篇-二分算法

算法竞赛从入门到国奖算法基础入门篇-二分算法

本文介绍了二分查找算法及其应用场景,重点讲解了在有序数组中查找元素边界的方法。文章首先解释了二分查找的基本原理,通过例题展示了如何查找元素的第一个和最后一个出现位置。接着介绍了二分查找的两种模板(查找左端点和右端点),并详细说明了模板选择的条件和注意事项。此外,文章还探讨了二分查找在答案求解中的应用,包括木材加工、砍树和跳石头等问题,展示了如何通过二分法寻找满足特定条件的最大值或最小值。最后提供了多个实际问题的代码实现,帮助读者理解二分查找的具体应用。

时间:12/24/2025

C进阶-C的类型转换

C进阶-C的类型转换

​🎂作者介绍:🎂🎂🎂作者id:老秦包你会,🎂简单介绍:🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂喜欢学习C语言、C++和python等编程语言,是一位爱分享的博主,有兴趣的小可爱可以来互讨🎂🎂🎂🎂🎂🎂🎂🎂。

时间:12/24/2025

-使用内存映射文件实现进程间通信

-使用内存映射文件实现进程间通信

还是调用的win32的CreateFileMapping,但是多了很多封装,使用起来很方便。那MemoryMappedFile.CreateNew是什么回事呢?关于CreateFileMapping,资源就很多了,这里不赘述。另外,C#中很多对象是可以在进程间共享的,可以自行学习。

时间:12/23/2025

基于range的函数式编程C,python比较

基于range的函数式编程C,python比较

Python和Kotlin在表达这种算法时确实更优雅,而C++在性能和类型安全上更有优势。选择哪种语言取决于你的具体需求!Kotlin和Python的函数式编程确实可以更简洁地实现这个逻辑。特性PythonKotlinC++20Ranges。为什么Python/Kotlin更简洁?函数式支持⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐。类型安全⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐。简洁性⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐。可读性⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐。性能⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐。

时间:12/22/2025

C轻松实现Excel到TXT的转换

C轻松实现Excel到TXT的转换

需要将Excel表格转为纯文本?手动复制不仅麻烦,格式还容易乱!现在,用Spire.XLSfor.NET,几行C#代码就能一键转换,让数据提取干净又利落!

时间:12/22/2025

CSTL详解九priority_queue的使用与模拟实现

CSTL详解九priority_queue的使用与模拟实现

储存数据类型为int,容器为vector,构造大堆。代码语言:javascriptAI代码解释。

时间:12/21/2025

C2023标准对进程间共享信息的优化从传统IPC到现代C的演进

C2023标准对进程间共享信息的优化从传统IPC到现代C的演进

C++20/23标准对进程间通信(IPC)的优化演进C++20/23标准针对进程间通信(IPC)进行了多项现代化改进,解决了传统IPC方案的主要局限性。传统方法依赖平台特定API,存在手动内存管理、类型不安全、同步机制复杂等问题。C++20引入std::atomic_ref实现共享内存原子操作,增强内存序控制;完善std::pmr多态分配器,支持共享内存容器;新增std::latch等同步原语。这些改进使开发者能够以更安全、高效的方式实现跨进程数据共享,通过RAII模式简化资源管理,提升类型安全性,并为跨

时间:12/21/2025

CC刷题集string类一

CC刷题集string类一

本文介绍了四个字符串处理算法题解:1.计算字符串最后一个单词长度,使用getline读取整行并通过rfind定位空格;2.验证回文串,通过过滤非字母数字字符并转换大小写后双指针判断;3.寻找字符串中第一个唯一字符,利用数组统计字符出现次数;4.反转字符串,使用双指针交换首尾字符。每个解法都提供了详细思路和代码实现,涉及字符串常用操作和基础算法技巧。

时间:12/21/2025

Linux-进程池小程序

Linux-进程池小程序

【代码】Linux进程池小程序。

时间:12/21/2025

21天学通C语言第一天

21天学通C语言第一天

《21天学通C语言》第1课介绍了C语言的基础知识。文章首先讲述了C语言的发展历史,由丹尼斯·里奇于1972年在贝尔实验室发明,用于UNIX操作系统开发,后经ANSI标准化成为通用编程语言。接着阐述了选择C语言的五大理由:功能强大灵活、流行度高、可移植性强、语法简洁、支持模块化编程,并指出C语言是学习C++、Java等高级语言的基础。最后详细讲解了程序开发周期的四个步骤:编辑源代码、编译生成目标文件、链接库函数创建可执行文件、测试运行程序。该课程为初学者提供了C语言编程的完整入门指导。

时间:12/20/2025

extern-C

extern-C

extern"C"在C调用C++和C++调用C的场景下,确实有不同的含义,尽管它们的核心概念都是告诉编译器如何处理符号(即函数名)的方式。

时间:12/20/2025

深入解析-C-Type-类解锁反射与动态编程的核心

深入解析-C-Type-类解锁反射与动态编程的核心

Type类是C#反射机制的核心,它为开发者打开了动态编程的大门。从获取类型元数据,到动态创建对象、调用方法、操作字段,Type类提供了一套完整的API体系。在实际开发中,我们既要充分利用Type类的灵活性,也要注意性能优化和权限问题。对于C#7.3及以下版本的项目,需严格遵循兼容性规范,确保代码在旧版本环境中稳定运行。掌握Type类,不仅能解决“字符串匹配类字段”这类具体问题,更能为构建灵活、可扩展的.NET应用打下坚实基础。

时间:12/19/2025

C-字符串占位

C-字符串占位

允许您使用对象、字典或参数数组替换字符串中的占位符,并提供可选的回退方案。是一个轻量级且直观的C​​#字符串模板库。

时间:12/19/2025

CC结构体Struct

CC结构体Struct

C++结构体与类的区别主要体现在两个方面:1)默认访问权限不同(结构体成员默认public,类成员默认private);2)默认继承权限不同(结构体继承默认public,类继承默认private)。除此之外,结构体完全具备类的面向对象特性,包括成员函数、构造函数、继承和多态等功能。C++结构体既保留了C语言结构体的数据封装特性,又扩展了面向对象编程能力,实现了与类的高度一致性。

时间:12/19/2025

C-list容器模拟实现迭代器构造与STL风格编程

C-list容器模拟实现迭代器构造与STL风格编程

迭代器的核心效果是模拟原生指针的行为且提供统一的方式去封装底层的细节,该文章就尤其体现了面向对象封装的特点,算是一篇真正意义上的工业级别的模拟实现

时间:12/19/2025

C-智能指针深度解析原理实现与实战避坑

C-智能指针深度解析原理实现与实战避坑

本文深入探讨了C++智能指针的原理与应用。通过分析内存泄漏问题,引出RAII(资源获取即初始化)设计思想,详细解析了标准库中四种智能指针(auto_ptr、unique_ptr、shared_ptr、weak_ptr)的实现机制与适用场景。重点包括:1)智能指针如何通过对象生命周期自动管理资源;2)unique_ptr的独占所有权特性;3)shared_ptr的引用计数实现;4)weak_ptr解决循环引用的原理。文章还提供了完整自定义实现代码,并配以可视化说明,帮助开发者深入理解智能指针的核心概念

时间:12/18/2025

oj题-STL-oj题

oj题-STL-oj题

本文摘要总结了多个力扣和牛客网经典编程题的解题思路与代码实现,涵盖字符串处理、栈/队列应用、二叉树遍历等常见算法题型。主要内容包括:字符串处理类题目第一个唯一字符(哈希统计+两次遍历)反转字母(双指针跳过非字母字符)验证回文串(双指针+字符处理)字符串相加(模拟手工加法过程)栈/队列应用最小栈设计(辅助栈维护最小值)栈序列合法性验证(辅助栈模拟)逆波兰表达式求值(栈计算后缀表达式)二叉树算法层序遍历(队列+BFS分层处理)优先队列应用第K大元素(大顶堆特性利用)所有解法均注重时间

时间:12/18/2025

Windows下cc使用pgsql

Windows下cc使用pgsql

本文介绍了在VisualStudio中配置PostgreSQLC/C++开发环境的步骤。首先将PostgreSQL的bin目录添加到环境变量,然后在VS项目中配置包含目录和库目录为PostgreSQL的include和lib路径。接着在链接器输入中添加libpq.lib依赖项。文章演示了如何通过libpq-fe.h头文件连接数据库并执行SQL插入操作,包括初始化连接、检查连接状态以及执行SQL语句的基本流程。该配置适用于需要在C++项目中使用PostgreSQL数据库的开发场景。

时间:12/18/2025

LeetCode-Hot100-滑动窗口面试纯背版四

LeetCode-Hot100-滑动窗口面试纯背版四

本文介绍了两个字符串处理问题及其滑动窗口解法。第一个问题要求找出无重复字符的最长子串长度,通过维护哈希集合和双指针实现,时间复杂度为O(n)。第二个问题需要找到字符串中所有字母异位词的起始索引,通过比较固定长度窗口内的字符频率数组来判定异位词。两个问题都利用了滑动窗口技术,通过动态调整窗口边界来高效解决问题,避免了暴力枚举的低效性。这些方法在处理字符串子串问题时具有通用性,能有效降低时间复杂度。

时间:12/18/2025

Excel处理控件Aspose.Cells教程使用C在Excel中创建树状图

Excel处理控件Aspose.Cells教程使用C在Excel中创建树状图

使用树状图可视化层级数据,可以使复杂的信息一目了然。本文将介绍如何使用C#和Aspose.Cellsfor.NET在Excel中创建树状图。本指南包含完整的可运行代码示例、自定义图表外观的技巧。

时间:12/18/2025

C语言大小端格式详解

C语言大小端格式详解

本文详细介绍了C语言中的大小端存储格式。小端格式将低字节存放在低地址(如Intel/ARM处理器),大端格式将高字节存放在低地址(如网络协议)。文章提供了检测大小端的方法(联合体和指针),介绍了字节序转换函数(htonl/ntohl等),并分析了两种格式的适用场景。最后给出了网络数据解析、文件处理的实际示例和跨平台编程建议,强调理解字节序对底层开发的重要性。

时间:12/18/2025

基于QTCMySQL实现窗体学生信息管理系统

基于QTCMySQL实现窗体学生信息管理系统

一开始拿到任务书感觉这是一个不可能完成的任务,主要是我们还没有学数据库原理,对数据库非常的陌生。千里之行始于足下,即使困难也要努力去完成,我就去看了一下老师给我们的书籍资料,并没有完全看懂。开始写一个像计算器的小程序,更加深刻体会qt的框架。然后又去网上找了一些数据库MySQL的教程于是就安装了MySQL,和NavicatforMySQL。慢慢的开始写,从一开始解决如何连接数据库,如何页面跳转,到后面的如何进行数据库增删查改,和使用qttablewidget表格,都是去查阅文档,网上查资料。

时间:12/18/2025

线程同步的意义

线程同步的意义

C#线程同步的核心是控制共享资源的访问顺序技术核心作用适用场景lockMonitor互斥访问临界区大多数共享资源同步简化锁管理C#13+的高性能同步volatile保证可见性/有序性简单变量的线程间状态同步原子操作简单数值的递增/交换Mutex跨进程同步多进程共享资源重新发送事件减少锁竞争高并发场景的锁重试线程独立副本每个线程的私有状态。

时间:12/17/2025

上一页
12345...93
下一页第 1 / 93 页