摘要:一、前言 前一篇 【C++开源库】VS2019 编译 libcurl 库 编译除了 libcurl 库,现在来介绍下 libcurl 的使用。 在基于 LibCurl 的程序里,主要采用 callback function (回调函数)的形式完成传输任务,用户在启动传输前设置好各类参数和回调函数,当 阅读全文
posted @ 2021-05-02 11:06 fengMisaka 阅读(10) 评论(0) 推荐(0) 编辑
摘要:一、简介 libcurl 是一个跨平台的网络协议库,支持 http, https, ftp, gopher, telnet, dict, file, 和 ldap 协议。libcurl 同样支持 HTTPS 证书授权,HTTP POST, HTTP PUT, FTP 上传, HTTP 基本表单上传, 阅读全文
posted @ 2021-05-01 08:17 fengMisaka 阅读(27) 评论(0) 推荐(0) 编辑
摘要:一、前言 Qt 使用 QNetworkAccessManager 访问网络,这里对其进行了简单的封装,访问网络的代码可以简化为: // [[1]] GET 请求无参数 HttpClient("http://localhost:8080/device").success([](const QStrin 阅读全文
posted @ 2021-04-30 17:13 fengMisaka 阅读(15) 评论(0) 推荐(0) 编辑
摘要:一、前言 Qt 中访问网络使用 QNetworkAccessManager,它的 API 是异步的,这样在访问网络的时候不需要启动一个线程,在线程里执行请求的代码。(但这一点在有时候需要阻塞时就是个麻烦了) 需要注意一点的是,请求响应的对象 QNetworkReply 需要我们自己手动的删除,一般都 阅读全文
posted @ 2021-04-30 15:46 fengMisaka 阅读(8) 评论(0) 推荐(0) 编辑
摘要:一、前言 C++ 中比较不错的日志工具有 log4cxx,log4qt 等,但是它们都不能和 qDebug(), qInfo() 等有机的结合在一起,所以在 Qt 中使用总觉得不够舒服,感谢 Qt 提供了 qInstallMessageHandler() 这个函数,使用这个函数可以安装自定义的日志输 阅读全文
posted @ 2021-04-29 08:28 fengMisaka 阅读(20) 评论(0) 推荐(0) 编辑
摘要:一、OpenCv简介 OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在 Linux、Windows、Android 和 Mac OS 操作系统上。 它轻量级而且高效,由一系列 C 函数和少量 C++ 类构成,同时提供了 Python、Ruby、MATLAB 阅读全文
posted @ 2021-04-24 19:00 fengMisaka 阅读(7) 评论(0) 推荐(0) 编辑
摘要:一、编译开源库的传统方法 Windows 下开发 C/C++ 程序,少不了编译开源的第三方库。比如用于网络连接的高性能库 libcurl、用于压缩解压的 zlib 等等。使用这些库开发极大的方便了程序员,使得我们不必重复造轮子。但是使用这些库必须要处理以下问题。 编译方式 由于这些开源库绝大部分都来 阅读全文
posted @ 2021-04-24 11:44 fengMisaka 阅读(18) 评论(0) 推荐(0) 编辑
摘要:C++11 引入了右值引用,本文从实用角度出发,用尽量通俗易懂的语言讲清左右值引用的原理,性能分析及其应用场景,帮助大家在日常编程中用好右值引用和 std::move。 一、什么是左值、右值 首先不考虑引用以减少干扰,可以从 2 个角度判断:左值可以取地址、位于等号左边;而右值没法取地址,位于等号右 阅读全文
posted @ 2021-04-21 21:24 fengMisaka 阅读(14) 评论(0) 推荐(0) 编辑
摘要:五、技巧 当设计 C++软件时, 总会再三地受到一些问题的困扰。 你如何让构造函数和非成员函数具有虚拟函数的特点? 你如何限制一个类的实例的数量? 你如何防止在堆中建立对象呢?你如何又能确保把对象建立在堆中呢?其它一些类的成员函数无论何时被调用, 你如何能建立一个对象并让它自动地完成一些操作?你如何 阅读全文
posted @ 2021-04-21 19:04 fengMisaka 阅读(18) 评论(0) 推荐(0) 编辑
摘要:四、效率 本章的内容从两个角度阐述效率的问题。第一是从语言独立的角度,关注那些你能在任何语言里都能使用的东西。C++ 为它们提供了特别吸引人的实现途径,因为它对封装的支持非常好,从而能够用更好的算法与数据结构来替代低效的类似实现,同时接口可以保持不变。 第二是关注 C++ 语言本身。高性能的算法与数 阅读全文
posted @ 2021-04-21 19:03 fengMisaka 阅读(19) 评论(0) 推荐(0) 编辑