C(++)
Sprite丶雪碧
这个作者很懒,什么都没留下…
展开
-
Qt VS 自定义组件 多组件合并 控件 插件 静态链接 踩坑指南
折腾这个花了一天时间,记一文吧~环境我用的 Visual Studio + Qt Designer,没有用 Qt Creator,个人习惯问题。1、首先在 Visual Studio 里创建一个 “Qt Designer Custom Widget” 项目,没有的话先装 Qt 扩展,这里不多赘述。由于本文是针对“在同一个项目中编写多个自定义组件”,所以后面的命名可供参考,尽量不要以其中一个自定义组件为名字命名。这里我用的项目名称是 “QtCustomWidgets”...原创 2020-10-21 21:04:30 · 1094 阅读 · 1 评论 -
MSVC C++ 新属性 [[msvc::forceinline]]
新属性[[msvc::forceinline]] 应该是 msvc 特有的,在 Visual Studio 2019 16.7 中正式发布。使用前需要加/std:c++latest 参数,即在项目中设置“预览 - 最新 C++ 工作草案中的功能”。该属性的一个主要目的是支持 lambda 函数支持 forceinline。经过本人不严谨的简单测试,该属性除了新增对 lambda 的支持以外,其他方面似乎等效于 __forceinline 关键字。[[msvc::forceinline]]..原创 2020-08-27 06:32:56 · 305 阅读 · 0 评论 -
OpenSSL 1.1.1 Windows 编译说明
Requirement details ------------------- In addition to the requirements and instructions listed in INSTALL, these are required as well: - Perl. We recommend ActiveState Perl, available from https://www.activestate.com/ActivePerl. Another viable a..原创 2020-05-31 06:55:43 · 765 阅读 · 0 评论 -
Telegram 桌面端 Visual Studio 2019 编译 tdesktop 指南
此次编译该项目总耗时 1 天半(1 个通宵 + 2 个白天)。说起来,坑还是有(fei)点(bie)多的。不多说了,进入正题。1、准备环境由于此开源项目较大,编译容易出错,一些第三方软件可能与您已安装的版本相冲突。所以强烈建议在虚拟机中编译该项目,并保存多个时间点快照。环境建议:VMware 14 +Windows 10 1803x64 +网络代理安装好虚拟...原创 2020-05-15 09:22:42 · 1954 阅读 · 0 评论 -
C++ std::vector 的 emplace_back 能否完全取代 push_back
区别:push_back:先在调用处构造一次 class,传递进push_back内后再进行拷贝到缓冲区。emplace_back:在内部直接将构造class的参数转发构造到缓冲区。如果以上说法不好理解,那么用代码来表示。// 该 Class 支持隐式构造class Class{public: Class(INT a) : _a(a) {} INT _a...原创 2020-04-04 14:25:33 · 2059 阅读 · 1 评论 -
Windows 内核驱动无法使用 __DATA__、__TIME__、__TIMESTAMP__ 解决方法
项目 ->属性 ->DriverSettings ->Driver Model ->Allow Date, Time and Timestamp -> Yes。感谢单总的解答和这篇文章:https://developercommunity.visualstudio.com/content/problem/186922/-timestamp-macro-n...原创 2020-04-02 01:09:08 · 449 阅读 · 0 评论 -
C++ Windows 真随机数生成器
#include <wincrypt.h>class RealRandomizer{public: RealRandomizer() { if (!CryptAcquireContextW(&_hProv, NULL, NULL, PROV_RSA_FULL, 0)) { throw 1; } } ~RealRandomizer() { ...原创 2020-03-27 01:29:33 · 1718 阅读 · 0 评论 -
warning LNK4210 存在 .CRT 节 可能有未处理的静态初始值设定项或结束符
warning LNK4210: 存在 .CRT 节;可能有未处理的静态初始值设定项或结束符不要在自己的结构体定义内对成员进行初始化赋值。改在定义变量时对其赋值即可。此警告所产生的问题可能会导致在结构体定义内对成员的初始化赋值失败。...原创 2019-04-14 23:26:08 · 6495 阅读 · 7 评论 -
cpuid 指令 0和1 功能号释义
/* 参数2 对应值返回表 输入(eax) 返回 0 eax 最大可输入值(eax) ebx "Genu" ecx "ntel" edx "ineI" 组成 GenuineIntel(CPU供应商标识字符串) 1 eax 版本信息:类型、族、模型、步进ID ebx 第 7 ~ 0 位:品牌索引 ...原创 2019-04-16 05:14:06 · 2365 阅读 · 0 评论