logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

NVIDIA官网如何下载旧版驱动

许多小伙伴可能有一些困扰,就是自己可能需要固定版本的驱动,但是NVIDIA官网找不到所需版本的驱动,官网只会给你展示最新的不同CUDA 版本的那么一两个驱动,本文可以帮助你找到自己需要的驱动程序。

文章图片
#人工智能
通过Eigen使用sphinx生成c++文档)

如何使用sphinx去生成c++开发文档呢?只需要一个插件就好啦!

文章图片
#c++#开发语言#python
通过Eigen使用sphinx生成c++文档)

如何使用sphinx去生成c++开发文档呢?只需要一个插件就好啦!

文章图片
#c++#开发语言#python
c++ 学习笔记之 chrono库

chronoduration(时间间隔)、clock(时钟)与timepoint(时间点)。

文章图片
#c++#学习
c++ 学习笔记之 malloc

本文介绍了Linux系统中内存分配机制。内存布局分为栈和堆,分别向下和向上扩展。malloc底层主要通过brk/sbrk和mmap系统调用实现:brk扩展堆内存,mmap用于大内存分配。ptmalloc作为内存池管理机制,使用chunk结构管理内存块,包含prev_size、size等字段。分配流程包括搜索空闲链表、扩展堆或使用mmap、拆分大块;释放流程则涉及标记空闲、合并相邻块和缩小堆。ptm

文章图片
#c++#学习
c++ 学习笔记之 shared_ptr

本文介绍了shared_ptr的两种初始化方法:常规初始化(与new配合使用)和make_shared函数,并比较了两者的区别。常规初始化存在内存泄漏风险且效率较低,而make_shared通过单次内存分配同时存储对象和控制块,提高了效率。调试分析显示make_shared将强引用和弱引用计数初始化为1,并实现内存连续分配。此外,make_shared避免了C++17前参数求值顺序导致的内存泄漏问

文章图片
#c++#学习
c++ 学习笔记之 new

本文探讨了C++中new和delete操作符的底层机制。通过反汇编分析发现,new操作符实际上调用了operator new函数(内部使用malloc分配内存)和构造函数;delete操作符则先调用析构函数,再通过operator delete(内部使用free)释放内存。实验表明,内存分配时会额外存储分配大小信息。文章还演示了如何重载类内的operator new/delete来自定义内存管理,

文章图片
#c++#学习
c++ 学习笔记之 模板元编程

本文介绍了C++模板元编程(TMP)和SFINAE技术。模板元编程通过在编译期完成计算和逻辑推导,利用模板特化、递归和类型萃取等特性实现编译期编程。示例展示了编译期常量计算、条件分支、类型萃取和递归模板等核心概念。SFINAE(替换失败非错误)技术则允许编译器在模板参数替换失败时尝试其他特化版本,C++20后可用Concepts替代大部分SFINAE应用。文章还介绍了标准库<type_tra

文章图片
#c++#学习
c++ 学习笔记之 模板元编程

本文介绍了C++模板元编程(TMP)和SFINAE技术。模板元编程通过在编译期完成计算和逻辑推导,利用模板特化、递归和类型萃取等特性实现编译期编程。示例展示了编译期常量计算、条件分支、类型萃取和递归模板等核心概念。SFINAE(替换失败非错误)技术则允许编译器在模板参数替换失败时尝试其他特化版本,C++20后可用Concepts替代大部分SFINAE应用。文章还介绍了标准库<type_tra

文章图片
#c++#学习
c++ 学习笔记之 shared_ptr

本文介绍了shared_ptr的两种初始化方法:常规初始化(与new配合使用)和make_shared函数,并比较了两者的区别。常规初始化存在内存泄漏风险且效率较低,而make_shared通过单次内存分配同时存储对象和控制块,提高了效率。调试分析显示make_shared将强引用和弱引用计数初始化为1,并实现内存连续分配。此外,make_shared避免了C++17前参数求值顺序导致的内存泄漏问

文章图片
#c++#学习
    共 18 条
  • 1
  • 2
  • 请选择