Coding
文章平均质量分 74
coding
Ango_Cango
这个作者很懒,什么都没留下…
展开
-
使用protobuf解析Onnx文件
使用OpenCV加载Onnx推理的时候,无法获取到Onnx的网络输入大小,并且对推理速度要求不高不需要使用TensorRT的时候,如何才能得知Onnx的一些必要的信息,OpenCV没有提供接口,只能自己从Onnx文件中解析了。Onnx文件是使用protobuf序列化后的二进制数据,想要读取里面的信息需要使用protobuf将其反序列化为对象才行。编译 protobuf,使用cmake生成vs工程直接编译即可。使用protoc命令,将编写好的proto文件生成C++类定义文件。原创 2022-11-10 16:15:10 · 2420 阅读 · 0 评论 -
C++内存泄露
一、内存泄漏是什么内存泄漏,是指在程序代码中动态申请的、堆上的内存 由于某种原因、在使用后没有被释放,进而造成内存的浪费。少部分的内存泄漏不会影响程序的正常运行,不过如果是持续的内存泄漏会耗光系统内存,最终会导致程序卡死甚至系统崩溃。为了避免系统崩溃,在无法申请到内存的时候,要果断调用exit()函数主动杀死进程,而不是试图挽救这个进程。二、如何察觉到它如果程序在正常地使用过程中,占用的内存随着时间推移不断增长,一般就说明存在内存泄漏的情况。也可以使用专门的工具来检测程序中的内存泄漏:在原创 2022-04-02 21:23:09 · 10200 阅读 · 1 评论 -
Windows 下编译使用 TCMalloc
Windows上编译使用tcmalloc原创 2022-03-20 12:10:14 · 1848 阅读 · 1 评论 -
MathNet.Numerics主要类功能简述
Combinatorics排列组合相关功能ComplexExtensions对System.Numerics类中复数相关功能的扩展Constants数学中常用的一些常数。ContourIntegrate对库的参数进行配置。Differentiate导数,对函数求一阶导数和二阶导数等。Distance各种类型的距离计算。...原创 2020-02-12 23:35:58 · 4212 阅读 · 0 评论 -
Sqlite3写性能优化-每秒百万条写入
sqlite3写入速度很慢?那一定是没有找到合适的方法,本文测试了几种方法并提供了测试源代码原创 2021-12-21 22:25:41 · 20105 阅读 · 6 评论 -
WPA基础
概念WPA 的英文全称是Progress Wab Apps,翻译为渐进式应用。来自 appsco.pe 的解释WAP是传统应用的未来发展方向。webbrowser技术的进步使得创建基于web的应用程序成为可能,这些应用程序模仿并提供与本机(传统)应用程序相同的功能,这意味着应用程序可以像网页一样被创建。WPA通过web浏览器提供像原生应用一般的强大功能,同时在使用的时候可以不受网络环的影响...原创 2020-01-14 23:27:28 · 783 阅读 · 0 评论 -
【C#】通过遍历IFrame访问页面元素
最近在做一个小项目,期间需要用到C#去操作IE页面中的元素,实现自动填写表单并且提交的功能,想这网上关于这方面的东西肯定很多,于是开始在网上找资料。在逆心的博客上找到些东西对自己帮助很大,原文链接:http://www.cnblogs.com/kissdodog/p/3725774.html1.首先添加必须的两个控件的引用Microsoft Internet Controls原创 2015-09-01 22:58:19 · 5006 阅读 · 1 评论 -
使用std::function和std::bind实现函数回调
文章目录std::functionstd::bindcodestd::function作为c++11新增的内容,std::function的实例可以对任何可调用对象实体进行存储、复制、和调用。其实就是一个对所有可调用对象的封装,通过一套方法调用一切。可调用对象包括:普通函数函数指针Lambda表达式仿函数对象类静态函数类成员函数其他函数对象**注意:**std::function的实例将可调用对象封装成一个新的对象,所以不能判断两个std::function是否是同一个函数的封装原创 2020-07-06 18:09:34 · 1207 阅读 · 0 评论 -
【操作系统】c++程序的内存分配
进程在内存中的分区情况是这样的:1,栈区(stack):栈区是由编译器自动分配和释放的,主要存放局部变量、函数参数值等,就连函数的调用过程都是用栈来完成的。栈空间的大小是有限制的,一般是1~8Mb,跟操作系统有关,所以如果需要申请大块内存的时候栈空间往往是不够用的,需要借助堆(heap)内存来存储。每一个线程都会有一个自己的栈空间。栈区内存的生长方向是从高到低的。2,堆区(he原创 2015-09-28 12:30:28 · 917 阅读 · 0 评论 -
【C++】explicit构造函数
按照默认规定,只有一个参数的构造函数也定义了一个隐式转换,将该构造函数对应数据类型的数据转换为该类对象,如下面所示:class String {String ( const char* p ); // 用C风格的字符串p作为初始化值//…}String s1 = “hello”; //OK 隐式转换,等价于String s1 = String(“hello”);但是原创 2015-06-24 13:31:22 · 532 阅读 · 0 评论