随笔分类 - C++
摘要:
CMake导入OpenCV出现错误 find_package(OpenCV REQUIRED) 能够找到OpenCVConfig.cmake文件 但OpenCV_FOUND值为false 原因是opencv目录下也存在 OpenCVModules.cmake,设置为 opencv/x64/vc17/
阅读全文
CMake导入OpenCV出现错误 find_package(OpenCV REQUIRED) 能够找到OpenCVConfig.cmake文件 但OpenCV_FOUND值为false 原因是opencv目录下也存在 OpenCVModules.cmake,设置为 opencv/x64/vc17/
阅读全文
摘要:
VS2022使用C++基于Libtorch调用Yolo模型 现在试着将之前训练的模型移植到C++平台,经过一系列的调试,最终完成了C++中实现调用模型进行视频识别 效果: 环境准备 确保已经安装了cuda与cudnn且添加了环境变量 Libtorch库准备 Pytorch的C++版本——libtor
阅读全文
VS2022使用C++基于Libtorch调用Yolo模型 现在试着将之前训练的模型移植到C++平台,经过一系列的调试,最终完成了C++中实现调用模型进行视频识别 效果: 环境准备 确保已经安装了cuda与cudnn且添加了环境变量 Libtorch库准备 Pytorch的C++版本——libtor
阅读全文
摘要:Lambda表达式 Lambda表达式是C++ 11 引入的一种匿名函数的方式,它允许你在需要函数的地方内联地定义函数,而无需单独命名函数,常用于简化代码、实现回调函数或配合 STL 算法使用。 基本语法结构 Lambda表达式的基本语法如下: [捕获列表](参数列表) -> 返回类型{ // 函数
阅读全文
摘要:元组 boost::tuple是Boost库中提供的允许程序员创建固定大小的元组,这些元组可以包含不同类型的元素。元组是一个数据结构,它可以存储多个值,这些值可以是不同类型的。boost::tuple是C++标准库中std::tuple的前身,后者在C++11标准中被引入。 特点 固定大小:一旦创建
阅读全文
摘要:枚举 在C++中,枚举(Enumeration)是一种用户定义的数据类型,它由一组命名的整数常量组成。枚举在C++中有几种不同的形式。 传统枚举(Unscoped Enum) 传统枚举(也称为未作用域枚举)定义如下: enum Color { RED, GREEN, BLUE }; 上述例子中,Co
阅读全文
摘要:Boost库 Bimap容器 概述 Bimap是Boost库中提供的一种双向映射(bi-directional map)数据结构。在C++标准库中,std::map或std::unordered_map只允许通过键来查找值,而boost::bimap允许同时通过键和值来查找对应的元素。 特点 双向映
阅读全文
摘要:删除字符串中的所有空格与换行 使用头文件中的remove函数,注意:std::remove 不会改变容器的大小,它只是将元素移动到容器的末尾。因此,我们需要调用 erase 来实际从字符串中删除这些元素。 使用 std::remove 算法,它重排元素,使得要删除的元素(在这里是空格和换行符)被放在
阅读全文
摘要:DLL介绍 DLL(动态链接库,Dynamic Link Library)是一种可执行文件,它包含可以在其他程序中调用的函数和数据。他是Windows操作系统中的一个重要概念,用于代码共享和模块化。 特点 代码共享:多个程序可以同时使用同一个DLL文件,而不需要将其代码编译到每个程序中。这样可以节省
阅读全文
摘要:map/multimap容器 Map的特性是,所有元素都会根据元素的键值自动排序。Map所有的元素都是pair,同时拥有实值和键值,pair的第一个元素被视为键值,第二个元素被视为实值,map不允许两个元素有相同的键值。 multimap和map的操作类似,唯一区别是multimap的键值可以重复。
阅读全文
摘要:set/multiset容器 简介 Set的特性是,所有元素都会根据元素的值自动被排序。Set不允许两个元素有相同的值。 Set的迭代器iterator是一种const_iterator,不能通过迭代器改变任意set元素的值。 multiset的特性和用法和set相同,唯一的差别在于它允许值重复。
阅读全文
摘要:queue容器 基本概念 queue是一种**先进先出的数据结构,它有两个出口,queue容器允许从一端新增元素,从另一端移除元素。 queue容器没有迭代器,所有元素进出都必须符合“先进先出”条件,只有顶端的元素才有机会被外界取用,所以也不提供遍历功能。 queue容器常用操作 构造函数 queu
阅读全文
摘要:stack容器 基本概念 stack是一种先进后出的数据结构,它只有一个出口,形式如下图所示。stack容器允许新增元素,移除元素,取得栈顶元素,但是除了最顶端外,没有任何地方可以存取stack的娶她元素。换句话说,stack不允许有遍历行为。 元素推入栈的操作称为push,将元素推出栈的操作称为p
阅读全文
摘要:模板 模板介绍 C++提供了函数模板(function template)。所谓函数模板。实际上是建立一个通用函数,其函数类型和形参类型不具体制定,用一个虚拟的类型来代表。这个通用函数就称为函数模板。凡事函数体相同的函数都可以使用这个模板代替,不必定义多个函数,只需在模板中定义一次即可。在调用函数时
阅读全文
摘要:explicit关键字 在C++中,explicit关键字用于控制某些类型转换的隐式性。它主要与构造函数和转换操作符相关联,下面详细介绍explicit关键字的使用和作用。 explicit构造函数 当构造函数被声明为explicit时,它指示的这个构造函数只能使用显式构造对象,不能用于隐式类型转换
阅读全文

浙公网安备 33010602011771号