上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 43 下一页
摘要: C++ 程序设计中使用堆内存是非常频繁的操作,堆内存的申请和释放都由程序员自己管理。但使用普通指针,容易造成内存泄露(忘记释放)、二次释放、程序发生异常时内存泄露等问题等。所有 C++11 就引入了智能指针。 一、原始指针容易发生内存泄漏 C 语言中最常使用的是malloc()函数分配内存,free 阅读全文
posted @ 2021-03-25 09:43 fengMisaka 阅读(961) 评论(0) 推荐(0) 编辑
摘要: 一、VS2019安装 现在 Visual Studio 的最新版本已经升级到了 VS2019,另外 VS2019 社区版也是完全免费的,所以就准备升级到 VS2019 了,不再用 VS2015 了。 官方下载地址:https://visualstudio.microsoft.com/zh-hans/ 阅读全文
posted @ 2021-03-25 09:39 fengMisaka 阅读(3539) 评论(0) 推荐(0) 编辑
摘要: 一、C++11为什么要引入Lambda表达式? 编写程序时,往往会大量用到函数,为此要编写很多类。有的类只用来定义了一个函数成员,而且这个函数也只使用了一次,编写这样的类就有点浪费。而且,定义类的地方和使用成员函数的地方可能相隔较远,查看其 operator() 成员函数也比较麻烦。 对于只使用一次 阅读全文
posted @ 2021-03-25 09:31 fengMisaka 阅读(399) 评论(0) 推荐(0) 编辑
摘要: 一、C++11为什么要引入std::bind? C++11 引入了std::bind,顾名思义,是用来绑定函数调用的某些参数的。std::bind能改造现有函数,生成新的函数。举例说明,现在有这么个函数声明: int f(int a, int b); 我现在需求,我要一个有 2 个 int 类型参数 阅读全文
posted @ 2021-03-25 09:24 fengMisaka 阅读(347) 评论(0) 推荐(1) 编辑
摘要: 博客《C++11 新特性总结》描述了一些 C++11 带来的新的特性,但是不够全面。所以写该博客做一个简要补充。在实际工作中,std::function 经常用来实现回调函数。 一、C++11为什么要引入std::function? 在 C++03 的时代,是使用函数指针来把一个函数作为参数传递,这 阅读全文
posted @ 2021-03-25 09:21 fengMisaka 阅读(890) 评论(0) 推荐(1) 编辑
摘要: 一、前言 管道(Pipe)实际是用于进程间通信的一段共享内存,创建管道的进程称为管道服务器,连接到一个管道的进程为管道客户端。一个进程在向管道写入数据后,另一进程就可以从管道的另一端将其读取出来。 在介绍命名管道之前首先要区分匿名管道与命名管道的区别: 匿名管道(Anonymous Pipes)是在 阅读全文
posted @ 2021-03-24 21:00 fengMisaka 阅读(929) 评论(0) 推荐(0) 编辑
摘要: 一、什么是进程间通信? 进程间通信(IPC - Interprocess communication),就是在不同进程之间传播或交换信息。那么不同进程之间存在着什么双方都可以访问的介质呢?进程的用户空间是互相独立的,一般而言是不能互相访问的,唯一的例外是共享内存区。但是,系统空间却是“公共场所”,所 阅读全文
posted @ 2021-03-24 20:58 fengMisaka 阅读(667) 评论(0) 推荐(0) 编辑
摘要: 这里将 Qt 常用的文件操作函数封装成一个单例类,方便复用。 一、类定义 FileMgr.h: #ifndef FILEMGR_H #define FILEMGR_H // Qt文件管理类 #include <QFile> #include <QFileInfo> #include <QDir> # 阅读全文
posted @ 2021-03-17 18:47 fengMisaka 阅读(1140) 评论(0) 推荐(0) 编辑
摘要: 一、简介 QML Online即 QML 在线预览工具,是一个由 EmScripten/WebAssembly 支持的 Qt/QML 适配版,该项目目前托管在 KDE 组织下。 如果你想在线练习 QML,并实时查看渲染效果,但是又没有安装 Qt,也没有 QML/qmlscene 工具时,可以使用它。 阅读全文
posted @ 2021-03-17 12:11 fengMisaka 阅读(2902) 评论(0) 推荐(0) 编辑
摘要: 开发环境:Win10 + CMake3.20.0 + VS2019 需要用到一个用于 UV 贴图的工具库:boundary-first-flattening ,所以这里需要先 CMake 编译下该源码库,注意以下均编译 32 位的 Release 库。 在编译前仔细查阅其 README.md 文件, 阅读全文
posted @ 2021-03-15 12:39 fengMisaka 阅读(704) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 43 下一页