自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

fpcc的专栏

于细微处见精神,从宏观里学态度。行之苟有恒,久久自芬芳。

  • 博客(838)
  • 资源 (21)
  • 问答 (1)
  • 收藏
  • 关注

原创 C++编程实践——标准库overloaded实现分析

本文分析了C++模板技术中overloaded结构体的应用与实现原理。通过std::variant和std::visit的示例代码,展示了如何利用模板继承和运算符重载来创建可调用对象的集合。文章重点解析了overloaded模板的展开过程,揭示了其通过继承多个lambda表达式并引入各自operator()的实现机制。同时说明了std::decay_t用于类型退化、if constexpr实现编译期条件分支等技术细节。代码示例演示了如何针对不同类型参数进行差异化处理,为模板编程初学者提供了深入理解模板技术的

2025-11-24 12:38:28 5

原创 并行编程实战——CUDA编程的流的优先级

本文探讨了CUDA流优先级的概念与应用。优先级在计算任务中广泛存在,类似于银行业务中的VIP优先处理机制。CUDA通过cudaStreamCreateWithPriority函数支持流的优先级设置,但需先使用cudaDeviceGetStreamPriorityRange检查硬件支持情况。文章指出优先级仅保证调度顺序而非执行效率,不当设置可能导致低优先级任务"饿死"。通过示例代码演示了如何创建不同优先级的流,并执行向量加法和矩阵乘法任务。特别提醒开发者注意:优先级设置适用于需要紧急处理的

2025-11-23 09:28:09 21 2

原创 C++编程实践——手动实现std::visit

本文分析了C++中std::visit的实现原理与手动实现方法。首先通过示例展示了std::visit的基本用法,指出其需要支持类型擦除、静态展开、编译时多态等特性。然后提供了一个手动实现的方案,利用模板递归和偏特化技术,实现了类似std::visit的功能。该实现分为基础模板、访问接口和细节完善三部分,通过编译期展开处理不同类型的访问。最后通过编译后代码展示了模板实例化的具体过程,验证了该方案的可行性。文章为理解std::visit的工作原理提供了实践参考。

2025-11-22 10:02:59 72 1

原创 跟我学C++中级篇——重载问题分析之函数模板重载的问题

本文探讨了C++模板编程中的重载问题及其解决方案。主要问题包括:模板函数与普通函数的重载优先级、类模板成员函数重载、特化与重载的关系、SFINAE和concepts对重载的限制,以及完美转发的匹配原则。通过代码示例分析,强调掌握重载规则、模板特化技术和引用折叠规则的重要性。文章指出,尽管模板技术复杂,但只要深入理解相关原理,就能有效解决重载问题。最后鼓励开发者勇于面对技术挑战,提升模板编程能力。

2025-11-21 07:57:40 68 4

原创 跟我学C++中级篇——重载问题分析之类函数重载的问题

本文探讨了C++类成员函数重载中的关键问题与解决方法。重点分析了四种常见问题:1)类成员函数与普通函数的作用域冲突问题;2)const限定符在参数和成员函数中的重载规则;3)C++11引用限定符的重载应用;4)类继承中的虚函数重载和对象切片问题。通过代码示例展示了每种情况的具体表现,并提供了解决方案,如使用using声明引入父类函数、区分const对象调用等。文章强调理解作用域、const修饰层次和继承关系等技术细节对正确实现重载的重要性,避免因混淆概念导致的错误。

2025-11-20 12:32:04 368 1

原创 跟我学C++中级篇——重载问题分析之运算符重载的问题分析

本文探讨了C++中运算符重载的常见问题及解决方法。主要内容包括:运算符重载分为成员函数和类外普通函数重载两种方式,应注意重载符合常规语义;列举了7类典型问题,如不可重载运算符识别、operator->递归、自赋值检查缺失、new/delete重载风险等,并通过代码示例分析原因;针对每个问题给出解决方案,如正确返回指针类型、增加对称重载函数、区分前置/后置++返回类型等。文章强调运算符重载应遵循常规逻辑,避免滥用,建议开发者根据实际需求选择性掌握相关技术点,不必过度追求全面覆盖。

2025-11-18 14:00:24 712 2

原创 跟我学C++中级篇——重载问题分析之常见的情况

本文总结了C++重载中的常见问题及其解决方法。主要问题包括:1) cv限定符重载中顶层const被忽略的问题;2) 作用域导致的函数隐藏现象;3) 默认参数与重载的冲突;4) 匹配优先级导致的递归崩溃风险;5) 数组退化为指针的问题;6) 普通函数与模板函数的优先级问题;7) 可变参数重载的匹配问题。通过具体代码示例分析每个问题的产生原因,并给出了对应的解决建议,强调开发者应加强基础知识掌握,在编码时注意细节处理,避免依赖编译器的隐式转换,尽量显式处理各类重载情况。

2025-11-17 10:35:31 284 1

原创 并行编程实战——CUDA编程的回调函数

本文介绍了CUDA中回调函数的使用方法。回调函数作为GPU对CPU的回调,通过cudaLaunchHostFunc()等接口在GPU操作完成后触发,并执行主机端函数。文章重点说明了CUDA回调函数的特点:必须在主机端执行,需保持短小精悍,避免调用CUDA API导致死锁。通过一个向量加法的示例展示了回调函数的实际应用,包括数据传输、内核计算和回调触发流程。合理使用回调函数可以简化流操作后的数据处理,但开发者需注意其特殊性和潜在陷阱。对CUDA框架特性的深入理解有助于开发更灵活的GPU应用。

2025-11-16 10:27:24 774

原创 跟我学C++中级篇——重载问题分析之函数重载的匹配说明

本文系统介绍了C++函数重载的匹配规则与实现方法。首先阐述了重载匹配遵循"最佳匹配"原则,类比特征匹配的优先级。然后详细讲解了10个具体匹配步骤,包括作用域确定、参数转换优先级(精确匹配>提升转换>标准转换>用户定义转换>变参匹配)、模板处理等。通过完整示例演示了参数不同、类型不同、cv限定符、引用限定符、模板特化、变参模板、运算符重载以及继承中的重载等多种场景。最后强调掌握这些规则有助于分析和解决重载中的匹配问题。文章为理解C++函数重载机制提供了全面指导。

2025-11-16 10:23:56 288

原创 跟我学C++中级篇——重载问题分析之一概述

本文探讨了C++函数重载的技术细节及常见问题。函数重载虽常见但存在技术陷阱,如示例代码展示的无限递归导致栈溢出问题。文章阐述了函数重载的5个匹配原则(精确匹配、提升转换等)和4步确定流程(查找函数、构建函数集等),并列举了7类常见重载问题,包括数据类型转换、模板匹配等问题。后续将针对各类问题展开详细分析,帮助开发者更好地掌握重载技术细节。

2025-11-15 10:08:09 251

原创 跟我学C++中级篇——编译期和运行时的性能处理分析

本文探讨了C++性能优化的两种主要方式:运行时优化和编译期优化。运行时优化包括多态处理、条件语句和表处理等方法,各有其优缺点,如多态处理编写复杂且性能较低,而表处理性能较好但对开发者要求较高。编译期优化通过C++新标准(如constexpr、模板元编程等)显著提升性能,如std::visit利用编译期多态、表机制和内联优化等特性。通过合理结合这两种优化方式,开发者可根据实际需求提升程序性能。

2025-11-14 09:06:24 1143

原创 跟我学C++中级篇——std::unique_lock的分析应用

本文分析了C++中std::unique_lock在多线程编程中的应用。作为RAII封装类,它相比lock_guard提供了更精细的锁控制功能,支持延迟加锁、尝试加锁、所有权转移等特性。文章详细介绍了6种典型用法:1)延迟锁定减小锁粒度;2)非阻塞尝试加锁;3)独占所有权转移;4)与条件变量配合使用;5)递归锁定解决嵌套调用问题;6)手动管理锁状态。通过代码示例展示了各场景下的具体应用方法,帮助开发者避免死锁和资源争用问题。

2025-11-13 12:28:00 313 1

原创 C++编程实践——magic_enum的应用

文章摘要:本文介绍了枚举反射的应用场景及其局限性,重点推荐了magic_enum开源库的使用。该库通过反射实现枚举值与名称的自动映射,避免了手动维护映射表的问题。文章详细说明了magic_enum的使用方法、环境检测、应用限制(如枚举值范围、别名问题、编译器支持等)以及解决方案,并提供了示例代码。最后强调开发者应善于利用第三方库来提高开发效率,实现学以致用。全文约150字。

2025-11-11 12:06:26 869 2

原创 C++编程实践——分布式文件系统

分布式存储技术通过整合网络中的存储资源实现数据分散存储,具有高安全性、可用性、扩展性和透明性等优势。其中分布式文件系统以HDFS、Ceph、GlusterFS等为代表,广泛应用于大数据分析、云存储、高性能计算等领域。不同系统各有特点:HDFS适合大文件批量处理,Ceph支持多种存储接口,GlusterFS无元数据服务器设计,TFS专为电商小文件优化。选择时需结合实际场景需求,综合考虑文件大小、性能要求等因素。随着大数据和云技术的发展,分布式文件系统已成为现代数据存储的重要基础设施。

2025-11-10 12:31:54 759

原创 跟我学C++中级篇——const_cast分析

本文探讨了C++中const常量处理的风险与技巧。首先指出开发者常忽视const带来的安全隐患,如遗留代码维护困难、与C语言交互的兼容性问题等。const_cast的核心作用是在保证内存一致性的前提下移除常量限制,其应用场景包括接口兼容、常函数调用优化等,但也存在潜在风险。文章强调在处理常量时应保持谨慎,建议优先使用mutable修饰或重载接口,严格限定const_cast的作用域。最后指出C++的灵活性是把双刃剑,正确理解语言特性才能编写健壮代码。

2025-11-08 09:58:19 710 2

原创 debain12安装——对启动分区的处理

本文针对Debian 12安装过程中使用LVM分区时出现的"grub-install dummy faile"错误进行分析,指出问题根源在于EFI和/boot分区被错误地分配到了LVM分区。原因在于UEFI固件无法识别LVM结构,且GRUB引导器在启动初期可能无法访问LVM中的/boot文件。解决方法包括:1)手动为EFI(100MB-1G FAT32)和/boot(1G-2G ext4)创建独立分区;2)先采用LVM自动分区再调整。文章强调掌握系统安装的基本方法需要耐心实践,建议初学者

2025-11-07 08:04:50 605 2

原创 C++编程实践——再谈timerFD

摘要:本文对Linux中的timerfd定时器机制进行了总结分析,重点将其与eventfd进行对比。timerfd通过文件描述符抽象定时器,实现了与IO多路复用机制(如epoll)的集成,统一了事件模型。文章详细介绍了timerfd的内核实现、四种时钟类型、工作原理及应用步骤,并分析了其优势(高精度、避免信号竞争、线程安全等)和局限性(资源限制、创建开销大)。最后通过一个简单例程演示了timerfd的基本用法,强调开发者应根据实际需求选择合适的定时器机制。

2025-11-06 12:11:00 579 1

原创 C++编程实践——eventFD

本文介绍了Linux下的eventFD机制。eventFD是Linux内核提供的一种轻量级进程间通信机制,通过64位计数器实现事件通知,其操作具有原子性和高性能。文章分析了eventFD的工作原理,包括创建初始化、读写操作及与IO框架的集成方式。eventFD广泛应用于异步任务、IO多路复用和进程间通信等场景。示例代码展示了eventFD的基本使用方法,通过主线程向工作线程发送事件通知。文章强调掌握事件机制对Linux开发的重要性,特别是网络编程领域。

2025-11-03 18:41:42 384 4

原创 并行编程实战——CUDA编程的动态并行性介绍

本文介绍了CUDA动态并行性(CDP)技术及其两个版本的区别。CDP允许GPU内核直接启动其他内核而无需CPU介入,支持设备端内核启动、嵌套并行和运行时控制。CDP分为CDP1和CDP2两个版本,CDP2在同步机制、流处理和编译支持等方面进行了改进,但与CDP1存在不兼容的情况。文中通过代码示例演示了CDP的应用,并详细说明了在Visual Studio中的配置要点。最后指出CDP技术让GPU能够自主管理工作,提高了计算效率,这是该技术出现的重要原因。

2025-11-02 09:57:08 792 3

原创 计算机原理—缓存

计算机存储系统采用层次化结构来平衡速度、容量与成本。主要包括CPU缓存(L1-L3)、内存和硬盘,各自具有不同的读写速度与容量特性。缓存机制基于计算机访问的局部性原理,通过多级查找策略(命中/未命中)提升数据访问效率,在硬件和软件层面均有广泛应用。MESI等协议确保了多核CPU的缓存一致性。缓存作为CPU与内存间的桥梁,有效解决了速度不匹配问题。掌握缓存原理对开发高性能系统至关重要,但需根据实际场景合理应用。

2025-11-01 10:05:03 800 3

原创 跟我学C++中级篇——C++中的匹配查找

本文探讨了C++中数据的匹配查找技术及其应用。文章首先指出匹配查找在计算机各领域的重要性,随后详细介绍了C++中6大类方法:循环遍历、STL算法、正则表达式、哈希表、子串/模糊查找(如后缀数组和BK树)、前缀处理(如Trie树和AC自动机)。每种方法都分析了其时间复杂度、空间复杂度及典型应用场景。文中还提供了STL find、正则表达式和哈希表的使用示例代码。文章强调这些技术应根据具体需求选择,在效率与资源消耗间取得平衡。

2025-10-31 08:08:25 986 1

原创 c++23中的print和println

摘要:C++23引入的std::print和std::println是改进的格式化输出函数,相比传统的printf和cout更安全高效。主要特点包括类型安全、支持Unicode、自定义类型格式化和兼容C文件流。println自动添加换行符,两者都支持参数索引和格式化说明。例程展示了基本用法,表明这些新函数简化了格式化输出,是C++标准持续演进的重要改进。开发者可通过这些函数实现更简洁安全的输出操作。

2025-10-27 18:44:14 813 4

原创 并行编程实战——CUDA编程的Warp

本文介绍了CUDA编程中warp(线程束)的核心概念及其应用。warp是32个线程的执行调度单元,通过warp级别的调度优化GPU计算效率。文章分析了warp的三种状态、内存访问优化策略、与线程块的关系,以及warp级别的协作组和数据交换原语。重点探讨了warp divergence(线程束发散)问题及其解决方案,包括分支预测和延迟隐藏技术。最后强调从基础概念入手,逐步深入掌握CUDA技术体系的重要性。全文系统性地阐述了warp在CUDA编程中的关键作用及优化策略。

2025-10-26 09:49:50 505 5

原创 C++编程实践——Linux下的CPU控制

本文介绍了Linux系统下资源管理和CPU控制的详细方法。在资源管理方面,Linux通过配置文件(如/proc目录)提供精细控制,但需注意权限问题。CPU控制包括频率设置、核心管理、亲和性绑定和优先级调整,可通过命令(如cpupower)、配置文件(如/sys目录)和代码(如cgroup API)实现。文章提供了具体命令示例和C++代码片段,展示如何创建cgroup并限制CPU使用。开发者需全面了解系统环境,将代码技术与平台特性结合,才能实现高效资源管理。

2025-10-25 10:26:31 767 1

原创 跟我学C++中级篇——C++中的remove函数

本文分析了C/C++中不同库中的remove函数及其区别。std::remove在<algorithm>中用于容器元素删除,在<cstdio>中用于文件删除;std::filesystem::remove只能删除文件或空目录,删除非空目录需用remove_all。通过示例代码展示了各函数的正确用法,强调开发者需明确不同remove函数的功能差异和适用场景,避免混淆和误用。理解这些细节对正确使用删除功能至关重要,可防止因名称相同导致的错误认知和应用问题。

2025-10-24 07:51:36 313 2

原创 C++编程实践——编译器优化实践

编译器的优化和相关代码的匹配,一般对开发者的要求比较高。至少需要开发者把相关的一引技术原理整清楚,否则就无法有针对性的进行相关的优化,甚至可能产生相反的效果。不过万事总得踢开第一步,建议开发者还是需要认真学习相关的知识,这对于开发者在日后的开发中占有不小的优势。

2025-10-23 12:44:58 599 4

原创 设计心得—一致性的分析

本文探讨了计算机系统中一致性的概念、类型及其实现方式。一致性是确保系统协调统一运行的关键要求,包括严格一致性、顺序一致性和最终一致性三种模型。实现一致性需要硬件、编译器、操作系统和软件共同协作,涉及内存序、分布式算法、数据库事务等多种技术。虽然一致性保证了数据的完备性和操作的正确性,但也会影响系统性能。理解一致性原理对开发者处理复杂并行编程和底层开发至关重要。

2025-10-20 12:14:23 840 2

原创 并行编程实战——CUDA编程的延迟加载

本文介绍了延迟加载(Lazy Loading)技术在CUDA框架中的应用及其优缺点。延迟加载通过将资源加载推迟到实际需要时进行,优化资源利用并减少内存开销,但可能影响首次调用效率并增加管理复杂性。在CUDA中,延迟加载可从11.7版本开始使用,通过设置环境变量启用,能显著提升启动速度。文章还探讨了延迟加载可能导致的死锁、内存分配异常和自动调优问题,并提供了解决方案。最后通过示例代码展示了如何查询CUDA的加载模式,强调合理使用延迟加载对性能优化的重要性。

2025-10-19 08:13:54 894 1

原创 C++编程实践——资源耗尽和栈溢出

本文对比分析了C++程序中内存问题的两种常见类型:栈溢出和资源耗尽。栈溢出通常由无限制递归、大局部变量或过深函数调用导致,受限于系统严格的栈大小限制;资源耗尽则多因不受控分配、资源泄露或内存碎片引起。针对栈溢出,建议严格控制递归终止条件、栈变量大小并进行代码审查;对于资源耗尽,推荐使用智能指针、RAII机制、资源池及辅助工具检查。文章强调,扎实的基础知识是解决此类底层问题的关键,开发者需重视基础技术细节的学习与把控。

2025-10-18 09:09:12 319 2

原创 设计心得——稳定和性能

本文探讨了软件设计的核心目标与平衡艺术。文章指出,软件设计的本质是高效解决复杂问题,关键在于稳定性和性能的辩证统一。稳定性包含可靠性、容错性等7个指标,性能则涉及响应时间、吞吐量等10个维度。作者提出设计者应像厨师或医生般灵活应对:通过资源管理、算法选择等保障稳定性,利用代码优化、平台调优等提升性能。二者关系如同"功法"与"拳术",稳定是基础,性能是目标。最后强调,优秀设计应基于实际需求,在保障一方的前提下适度提升另一方,而非追求绝对极值。全文150字,概括了软件设计

2025-10-17 08:09:22 533 1

原创 跟我学C++中级篇—合理的使用异常

本文探讨了C++异常机制的应用限制与使用场景。主要观点包括:C++异常机制存在兼容性差、性能开销大、代码复杂度高等问题,特别是在底层系统编程中应谨慎使用;但在业务层、内存管理、UI开发等场景下可合理应用,并需遵循颗粒度控制、边界限定等原则。文章还通过示例代码演示异常处理,并介绍了noexcept关键字的使用场景。最后强调技术应用要因地制宜,开发者需深入理解技术特性才能在实践中灵活运用。

2025-10-13 18:56:18 436 3

原创 并行编程实战——CUDA编程的协作组

摘要:协作组(Cooperative Groups)是CUDA从9版本开始引入的线程通信机制,用于更精细地控制并行任务执行。它分为隐式(如线程块、簇、网格)和显式(如线程块切片、合并协作组)两类,支持跨Warp、Block甚至Grid的同步操作。协作组提供数据类型、同步接口、数据操作等功能,通过tiled_partition、labeled_partition等方式划分线程组。示例代码展示了线程块组的同步操作,体现了协作组在细粒度线程管理中的优势。随着CUDA版本迭代,协作组功能不断演进,反映了技术发展对并

2025-10-12 08:36:33 619 2

原创 跟我学C++高级篇—DWARF格式与调试

文章摘要: 本文探讨了程序调试的核心技术与DWARF调试数据格式。调试能力是区分开发者水平的关键,优秀开发者能通过日志和调试信息快速定位问题。DWARF是C/C++广泛使用的标准化调试数据格式,它存储源代码与机器码的映射关系,包含变量、函数、类型等调试信息。文章通过实例展示了如何使用objdump和readelf工具查看DWARF信息,并介绍了libdwarf等库的编程接口。调试信息的标准化对复杂软件开发至关重要,DWARF已从v2发展到v5,支持现代C++特性。掌握这些底层调试技术能帮助开发者更高效地解决

2025-10-11 12:13:43 455 2

原创 C++编程实践——gcc中的内存大页应用

本文介绍了在Linux平台上使用GCC将热函数映射到大页内存的三种方法:1)直接通过mmap系统调用实现大页映射;2)使用链接器脚本指定热函数段;3)利用GCC9+的特性优化函数节。热函数作为高频调用代码,通过大页内存可显著提高命中率。文中提供了完整示例代码和编译参数,强调技术应用需结合具体平台环境,才能实现性能优化。这些方法适用于需要极致性能的场景,如DPDK等底层开发。

2025-10-10 18:34:48 372 1

原创 c++26新功能—indirect<T>和polymorphic<T>

C++26将引入indirect<T>和polymorphic<T>两个新类模板,旨在提供动态分配对象的值语义控制。indirect<T>通过深拷贝T对象实现值语义,而polymorphic<T>支持多态值存储,能在复制时正确处理子类对象。二者具有常量传播、深拷贝、分配器支持等特性,适用于PIMPL、减少头文件依赖、容器存储多态对象等场景。与智能指针不同,它们提供值语义;与variant不同,它们专注于单一/多态类型控制。这两个模板将完善C++标准库对值语义的

2025-10-09 15:32:38 862 3

原创 并行编程实战——CUDA编程的驱动接口与运行时接口的分析

CUDA编程中Driver API与Runtime API的对比分析 本文对比了CUDA编程中的两种接口:Driver API和Runtime API。Driver API是底层接口,提供更精细的硬件控制和灵活性,适合底层开发人员;Runtime API是高级抽象,便于学习和使用,适合大多数开发者。主要区别包括: 抽象层次不同 操作管理方式差异 运行效率各有优势 内存管理精细度 并行化策略 JIT编译支持 示例代码展示了两种API实现矩阵加法的不同方式,Runtime API代码简洁,Driver API需

2025-10-05 08:32:57 873 1

原创 并行编程实战——CUDA编程的Stream

本文介绍了CUDA中的流(Stream)概念及其应用。流是CUDA中的操作队列,分为默认流和非默认流,可实现核函数的外部并行。文章详细讲解了流的调度机制、通过事件实现精细同步、流与图的结合应用,并提供了代码示例说明流的实际使用。作者强调在使用高级CUDA技术时需注意平台参数差异,避免兼容性问题。全文从基础概念到实践应用,系统阐述了流在CUDA并行计算中的重要作用。

2025-10-04 17:50:45 980 1

原创 c++26新功能—支持常量求值抛出异常

C++26标准引入constexpr异常处理机制,允许在编译期抛出和捕获异常。该机制通过异常槽存储异常信息,纳入标准异常控制体系,使开发者能在编译时发现错误(如无效输入),提升代码健壮性。标准规定异常不得逃逸出constexpr初始化范围,必须被捕获,且异常生命周期限于常量求值内。这一改进将安全机制前移至编译阶段,减少运行时问题,使代码更易维护。提案示例展示了日期解析等场景的应用,体现编译期异常处理的实用价值。

2025-10-03 08:39:27 282 2

原创 c++26新功能—constexpr在稳定排序中的应用

本文探讨了C++标准中constexpr和稳定排序的发展与应用。首先指出constexpr是逐步完善的,主要应用于算法、容器及提供检测函数。其次介绍STL中的稳定排序算法,分析其在C++26中部分支持constexpr的原因及限制。通过示例代码展示了constexpr在归并排序中的实现。最后强调标准持续向统一化方向推进,虽然进展缓慢但趋势坚定。文章认为只要编程环境不发生革命性变化,C++仍将保持和发展其优势。

2025-10-02 15:28:10 410 1

原创 跟我学C++中级篇—non-transient异常

本文探讨了C++中non-transient(非瞬时)异常的概念及其重要性。文章指出,随着C++标准的演进,异常对象的生命周期管理变得更加关键。non-transient异常指生命周期扩展到常量求值之外的异常,与transient(瞬时)异常形成对比。通过示例代码展示了两种异常的区别,并分析了non-transient异常作为安全机制的作用,防止编译期异常逃逸到运行时。最后强调理解这些概念有助于把握C++技术发展脉络,提升工程实践能力。全文揭示了异常生命周期管理对代码安全性的重要意义。

2025-10-01 16:43:41 320 2

masstree算法论文

目前的底层的分布式数据库如ROCKSDB等都使用的LSM的算法,本文使用了masstree这种算法来优化其处理。

2018-11-17

Sql批量操作数据

在SQLSERVER的多条数据操作时,使用SQLBULKCOPY等几种方式的对比,这篇文档就是整理了这些使用的方法。

2018-10-05

朗新WEBSERVER接口(南网和天津电网)

适用于朗新目前的所有接口,平台语言C#,主要是对电力系统SG186的跨平台调用。也适于于同样的WEBSERVER工程跨平台使用。使用说明书已打在压缩包里。

2009-03-16

IOTEX白皮书

物联网和区块链的结合,实现了链中链和跨链的通信,通过特有零知识证明来解决用户隐私问题。

2018-09-30

JAVA并发编程设计原则与模式

一本比较老的书,讲得多线程和并发技术,是一个入门的比较浅显的书籍。

2018-10-01

虹膜开源的算法

本文是国外的一款开源的虹膜识别框架的介绍,它的源码是可以直接使用的,但是需要优化。

2018-11-17

电能质量闪变的测量

电能质量是电力行业一个重要的部分,本论文从实际出发,论证了闪变测量的方法。

2018-10-05

大数阶乘算法的一个例子

小数的阶乘比较好做,但是阶乘的数量变化非常快,很快会溢出,这里采用一种变通的方法,可以实现相当大的数的阶乘,如果在这个基础上进一步扩展,能进行更大的阶乘算法。

2018-10-06

bancor协议白皮书

bancor协议是目前区块链研究的一个重要方向,跨链不同的TOKEN之间的兑换一直是一个问题,这里给出一个解决的方案。

2018-09-29

steamr白皮书

steamr是一个用来做数据去中心化的网络和市场相关的区块链项目,主要提供去中心化的云服务。

2018-10-11

安卓编译JAR包和SO

这个是用ECLIPSE编译JAR包和SO的一个教学录像,非常适合对c++不熟悉的人编译使用。

2018-10-01

linux设备驱动开发

本书从浅到深介绍了LINUX操作系统上的驱动开发的过程,值得推荐。

2018-11-17

代码管理核心技术及实践

代码管理是开发过程一个重要的环节,好的代码管理可以为团队的开发提供安全的保护和合作,本书就是讲述在不同环境中如何使用主流的代码管理软件和方式。

2018-09-30

DERP白皮书

DREP区块的白皮书,是一个新的区块链的技术,如果大家对这个感兴趣,可以下来看看。

2018-09-29

mixin白皮书

mixin是一个闪电交易快速的点点对的数字交道项目,它拥有非常好的技术栈。

2018-10-11

阿希链白皮书

阿希链是一个用javascript写的侧链,主要用来完成多链间的通信,有一定的特色,可以借鉴。

2018-10-11

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

TA关注的人

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