• 2024-07-05allocator、polymorphic allocator 与 memory_resource
    allocator、polymorphicallocator与memory_resourcecppallocatorCreated:2024-07-04T10:59+08:00Published:2024-07-05T11:27+08:00Categories:C-CPPcustomallocatorstd::allocator是无状态的,实测最简单的allocator只需要:value_typeallocatedeallocaterebi
  • 2024-05-08rapidjson
    一、简介RapidJSON是腾讯开源的一个高效的C++JSON解析器及生成器,它是只有头文件的C++库。RapidJSON是跨平台的,支持Windows、Linux、MacOSX及iOS、Android。writer和prettywriter都是将JSON数据打包为字符串的方法。官网:https://rapidjson.org/zh-cn/index.html1.1write和pr
  • 2024-01-2019容器空间配置器allocator
    容器空间配置器allocator容器的空间配置器allocator应分开完成:内存开辟内存释放对象构造对象析构#include<iostream>usingnamespacestd;//容器的空间配置器allocator做四件事情内存开辟/内存释放对象构造/对象析构template<typenameT>structAllocator{ T
  • 2024-01-2022String字符串和vector对象的迭代器iterator实现
    String字符串对象的迭代器iterator实现泛型算法参数接收的都是迭代器泛型算法是一组全局的函数,适用于所有容器基于第二点,泛型算法有一套方法可以统一地遍历所有容器的元素classString{public: //嵌套定义iterator类 classiterator { private: char*_p;//没有用
  • 2023-12-29MacOS - Xcode 报referenced from:
    Xcode升级10之后项目错误:==================================================================================================================Link//Users/moyea/Desktop/NewSVN/BD34/BDPlayer/build/Release/Leawo\Blu-ray\Player.app/Contents/MacOS/LeawoBlu-rayP
  • 2023-09-26C++内存管理
    primitives(基本工具)对比malloc,free不可重载c函数new,delete不可重载C++表达式::operatornew(),::operatordelete()可重载C++函数allocator<T>::allocate(),allocator<T>::deallocate()可自由设计并以之搭配任何容器C++标准
  • 2023-09-07126.STL 之 空间配置器(allocator)
    126.STL之空间配置器(allocator)1.SGI标准的空间配置器,std::allocatorSGI也定义了一个符合部分标准,名为allocator的配置器,但是它自己不使用,也不建议我们使用,主要原因是效率不佳。它只是把C++的操作符::operatornew和::operatordelete做了一层简单的封装而已。2.SGI特殊的
  • 2023-09-07【ROS2机器人入门到实战】你的第一个MicroROS节点
    2.你的第一个MicroROS节点写在前面当前平台文章汇总地址:ROS2机器人从入门到实战获取完整教程及配套资料代码,请关注公众号<鱼香ROS>获取教程配套机器人开发平台:两驱版|四驱版为方便交流,搭建了机器人技术问答社区:地址fishros.org.cn你好,我是爱吃鱼香ROS的小鱼。上一节我们介绍了Mic
  • 2023-09-04STL(3) 分配器 allocator
    目录使用分配器使用分配器分配器并不在gnuc的标准库中,需要从ext中引入对分配器的效率进行测试直接使用分配器,参数的数字代表分配了多少大小的内存,这里凸显了分配器的一个弊端,就是分配内存的时候需要指定大小归还内存的时候也需要指定大小,造成编程上的困难
  • 2023-08-23bitmap_allocator
    相关数据结构:blocks,super-blocks,bitmap,mini-vectorblock:分配单元,super-block:管理单元super_block_size=usecount+bitmap+blocks*block_sizemini-vector是控制单元,mini-vector中每两个元素(两根指针)指向某个super-block中的blocks的start和end。随着内存分配需求的增加
  • 2023-08-22std::allocator
    设计主要目的:减少malloc的cookie的开销设计主要方法:减少malloc的次数,用数据结构管理已经分配的内存。核心数据结构:free_list[16]存储16根链表头,free_list[i],0~15,free_list[i]管理(i+1)*16字节型区块。客户所需要内存块大小会被调整为16的倍数。流程:分配内存的时候先从战备
  • 2023-08-09allocator 不是模板 解决方案
    场景严重性 代码 说明 项目 文件 行 禁止显示状态错误(活动) E0864 allocator不是模板 cvos_srtmp_service C:\ProgramFiles(x86)\MicrosoftVisualStudio\2019\Professional\VC\Tools\MSVC\14.16.27023\include\regex 1175 错误(活动) E0864 associated_allocator不是模板
  • 2023-06-21allocator分配器
    示意图stl源码//摘自gcc-2.95.1union_Obj{union_Obj*_M_free_list_link;char_M_client_data[1];/*Theclientseesthis.*/};#ifndef__SUNPRO_CCenum{_ALIGN=8};enum{_MAX_BYTES=128};enum{_NFREELISTS=_MA
  • 2023-06-09greta 编译,配置,使用
    正则表达式regularexpressiongretavc6compile200820101.greta在vc6下能顺利编译greta2.64.(最后的版本已不存在vc6和vc6之外的区别了,作者最后合并到一起了)2.使用vs2008(visualstudio2008)编译会出现以下这些错误:2.1具体错误errorC2923:'regex:
  • 2023-05-14【C++11新特性】allocator空间配置类
    原文链接: http://blog.csdn.net/Xiejingfa/article/details/50955295今天我们来讲讲C++的allocator类。C++提供了new和delete操作符来管理动态内存空间。new操作通常需要完成两部分工作:一是在系统中申请内存空间,二是在分配的内存上构造对象。delete操作也通常需要完成对应的两
  • 2023-05-09C++如何实现容器的Copy/Move/Swap方法
    C++如何实现容器的Copy/Move/Swap方法1、引言目前网上有很多关于如何编写C++容器的教程,比如各种“手写STL”之类的文章和视频,但是这些教程中的容器一般都不包括allocator,比如:template<typenameT>classMyVector{...};然而我们知道标准库的容器都是有一个Allocator的模
  • 2023-04-09C++ Allocator
    C++Allocator该开始搞项目了,但是在搞项目之前,先搞一下C++的Allocator,因为项目中会用到。现在还不确定到底模仿哪个,jemalloc和tcmalloc,先看看吧。1.为什么需要Allocator其实和new/delete是等价的,但是可以屏蔽一些底层细节,因为不一定所有平台都提供统一的内存分配方式,所以需要
  • 2023-02-18CPP内存分配的详细指南——new和allocator以及智能指针
    Motivationcpp里面的内存管理一直让我头疼万分,最近重新翻了翻cppprimeplus这本书,被里面各种new搞得头皮发麻,于是就有了这篇博文。主要记录我自己对cpp里面内存管理的问
  • 2022-12-27rapidjson使用总结
    目录​​(?)​​​​[-]​​​​rapidjson简介​​​​Dom解析示例​​rapidjson简介rapidjson是腾讯的开源json解析框架,用c++实现。由于全部代码仅用headerfile实现,所以很
  • 2022-11-22<四>MyVector中加入迭代器功能
    我们之前有<C++模板编程模块>中的第<四>节理解空间配置器allocator优化STL中的Vector我将在此基础上加入迭代器功能代码Iterator为什么可以遍历所有的容器的方式都一
  • 2022-11-20<四>理解空间配置器allocator, 优化STL 中的Vector
    .在上一节我们实现的MyVector存在哪些问题?问题1现在有Student类classStudent{public:Student(){cout<<"构造Student对象"<<endl;}~Student(){cout<<"析
  • 2022-11-17LNK2005:继承std::string出现的问题
    今天调整合并项目代码时候编译链接时出现问题:errorLNK2005:"public:__cdeclstd::basic_string<char,structstd::char_traits<char>,classstd::allocator<char>>::~
  • 2022-11-16c++中的分配子allocator的注意点
    stl中说所有属于同一种类型的分配子对象都是等价的这也就是说由同一分配子所分配出的对象可以被视为拥有相同的内存结构而可以被同一个析构函数所销毁这意味着自己定义的
  • 2022-10-10【Redis】常用命令
    查看内存#redis-cli127.0.0.1:6379>auth123456127.0.0.1:6379>infomemory结果#Memoryused_memory:42030440used_memory_human:40.08Mused_memory_rss:463
  • 2022-09-2839、使用NCNN+YOLOFast/YOLOV5,实现视频流/图片的自动化的labelme标注数据
    基本思想:首先使用c++调用了腾讯的开源框架NCNN,然后使用腾讯的rapidjson实现自动化的labelme格式化json生成,实现了自动化识别和标注数据,人工稍微修正存在错误的数据集即可;(可以p