c++20 特性
学习 c++20 首先要有支持相关特性的编译器
msvc2019 如果和工作用的 msvc2015 安装在同一台机器上,在使用 vcpkg 时会产生冲突
clang 在 windows 下的使用并不平滑,如果初衷是 c++20,就不要舍本逐末。在熟悉 c++20 后回头折腾 clang
虚拟机上安装 msvc2019,Hyper-V 是好的选择吗?如果要用 VMware 还是躲开 Hyper-V
学习 c++20 首先要有支持相关特性的编译器
msvc2019 如果和工作用的 msvc2015 安装在同一台机器上,在使用 vcpkg 时会产生冲突
clang 在 windows 下的使用并不平滑,如果初衷是 c++20,就不要舍本逐末。在熟悉 c++20 后回头折腾 clang
虚拟机上安装 msvc2019,Hyper-V 是好的选择吗?如果要用 VMware 还是躲开 Hyper-V
查看 std::exception
的定义,除了析构函数,其他包括默认构造和拷贝构造在内的函数都声明为 noexcept
:
因为不允许复制
std::exception
抛出异常,故当派生类(例如std::runtime_error
)必须管理用户定义的诊断信息时,常将它实现为写时复制的字符串。
查看 std::logic_error
的定义 或 std::runtime_error
的定义:
因为不容许复制
std::logic_error
抛出异常,通常将此消息在内部存储为分离分配的引用计数字符串。这也是构造函数不接收std::string&&
参数的理由:无论如何它必须复制内容。
安装 VMware workstation 15 player 时,提示:
VMware workstation 15 player 和 Hyper-V 在此版本的 windows 上不兼容。
请从系统中移除 hyper-v 角色或将 windows 更新到 windows 10 版本 20H1。
我选择了在“启用或关闭 windows 功能”中关闭 Hyper-V,需要重启。后续启动虚拟机的时候还是报错:
您的主机不满足在启用 Hyper-V 或 Device/Credential Guard 的情况下运行 VMware Workstation 的最低要求。
参考帖子 :在禁用 Device/Credential Guard 后,可以运行 VM 的方法 , 重启生效。
最近两会,科学上网又宕机了。打算专心学习一下 v2ray 的插件和配置,此笔记用于备忘操作过程中的细节。也涉及 linux 系统的基础操作。
为了安全(和方便),提出以下要求或目标:禁用账号密码登录,全部改用密钥。 建立 vps 后的第一步
关于 v2ray xray v2fly,可以看看 V2Ray、Trojan、XRay
在工作中,遇到的几个关于构造函数的问题,以及语言边缘的坑(如何避开)。
1 | Minimal(src); // 不是类型转换语法吧? |
会先按照构造函数解析,还是
http://www.cppblog.com/wolf/articles/63490.html
http://www.cnblogs.com/chio/archive/2007/10/20/931043.html
传统的 func(var)
调用方式肯定不行,因为这意味着在某构造函数中又创建了个临时对象。
Linux 下使用 Valgrind;Windows 下使用 Visual Leak Detector。前者没接触过,后者的确不错。
虽然在 Windows 下可以使用 CRT:Find memory leaks with the CRT library,但因为其也会报全局变量以及 static
变量(报告早于这两者的析构),当项目体量较大,全局变量或 static
变量较多时,没有有效的区分,查找真实的内存泄漏就会比较棘手。
Enable memory leak detection,如何启用
只在启用 _DEBUG
时有效;若程序存在多个退出点,可以使用 _CrtSetDbgFlag
函数;报告默认在“输出”窗口打印,但可以自定义。
Interpret the memory-leak report,报告怎么看
重点强调了检测只针对 malloc
函数,无法检测 new
操作符。但其提供了使用 _malloc_dbg
实现的 operator new
重载版本:
Set breakpoints on a memory allocation number,如何打断点
Compare memory states,对比不同时刻的快照
False positives,误报现象
如题,在此做一份备忘,记录在 Windows 下进行 C++ 开发用到的工具、插件及其意义。
当然多少会涉及到如何安装、配置这些工具,但不会多做介绍。
Visual Studio2015 IDE 中需要安装的插件(vc2017 中可能已经内嵌了某些插件的功能)
cdn 节点和源上相同文件的 etag 或 lm 是相同的。
https://kb.cnblogs.com/page/92320/
2019/7/23 14:00:43 请求源 101.200.199.142 cdnapp.ydtg.com.cn
Date 原始服务器消息发出的时间
1 | HTTP/1.1 200 OK |