摘要:
一直在各种文章中看到RVO 和 NRVO 以及 Copy Elision,但是一直是只知道大概意思,却没有一个真正的定义,最近又再次被这个问题困惑,仔细理解了cppreference上的相关内容(没有去读标准原文),下面做一些总结。 Copy Elision 拷贝消除 就是一种拷贝优化技术的总称,R 阅读全文
摘要:
原文地址:https://www.cnblogs.com/clover-toeic/p/3845210.html 前言 良好的计时器可帮助程序开发人员确定程序的性能瓶颈,或对不同算法进行性能比较。但要精确测量程序的运行时间并不容易,因为进程切换、中断、共享的多用户、网络流量、高速缓存访问及转移预测等 阅读全文
摘要:
回调函数,在函数式编程和异步编程等中应用非常广泛,C++11开始,通过std::function, std::bind, Lamda等手段,我们可以很方便的实现回调函数的注册,举例如下: #include <function> using ProcessCallback = std::functio 阅读全文
摘要:
今天读到 Effective Modern C++中 Item 22所述,使用unique_ptr来创建并持有 pImpl 结构,对其中的一个问题做一些记录,具体的条款内容就不再描述,随便搜索或者参考如下链接: https://blog.csdn.net/aiyanzielf/article/det 阅读全文
摘要:
1.系统默认分隔符 一般意义下文件的系统路径在windows下使用 '\\' 分隔(转义后即'\'字符),在LINUX下使用‘/’分隔 针对一个一般的控制台工程,因为argv的第0组参数就是当前程序执行的路径,我们可以使用如下代码看到在不同系统下的结果 int main(int argc, char 阅读全文
摘要:
默认构造函数 当除了析构函数外没有其他任何默认函数,会自动生成默认构造函数,否则构造函数无法自动生成(即存在除析构函数意以外的任何其他BIG5之一),必须显示声明默认构造函数,即使他什么也不做。 即使显示声明的默认构造函数什么也不做,编译器也将其认为是复杂的,其不如自动生成的默认构造函数来的高效,并 阅读全文
摘要:
原文地址:https://zh.cppreference.com/w/cpp/language/value_category 转载一下留着备用 每个 C++ 表达式(带有操作数的操作符、字面量、变量名等)可按照两种独立的特性加以辨别:类型和值类别 (value category)。每个表达式都具有某 阅读全文
摘要:
转载自https://my.oschina.net/seanx/blog/716618, 关于模板类写得比较透彻 首先,我们要区分模板类虚函数和模板虚函数,话不多说,先上代码: 模板类虚函数 template<class T> class A { public: virtual ~A(){} vir 阅读全文
摘要:
什么是CRTP? The curiously recurring template pattern (CRTP) is a C++ idiom in which a class X derives from a class template instantiation using X itself 阅读全文
摘要:
C++ impl接口隔离方法pimpl用法详解 "Exceptional C++" 书中有描述的PIMPL idiom 接口隔离方法,转载一篇文章说说具体事项 原文链接:https://taozj.org/201708/cpp-pimpl-idioms.html 在编写稳定代码是,管理好代码间的依赖 阅读全文