0.前言 C++11为我们带来了std::shared_ptr,方便我们在动态分配内存的时候发生memory leak,他是基于引用计数实现的,下面给出一个简化版本。 1.实...
0.前言 C++11为我们带来了std::shared_ptr,方便我们在动态分配内存的时候发生memory leak,他是基于引用计数实现的,下面给出一个简化版本。 1.实...
0.前言 前几天遇到了一条寻找数组中第k小的题目,可以用STL的std::priority_queue来解决,将前k个元素放到std::priority_queue中,然后比...
0.为什么需要线程池? 当我们需要完成一些持续时间短、发生频率高的工作时,每次为他们开启一个线程既显得繁琐又会造成不必要的开销,所以为这一类工作写一个简单的线程池就很有必要了...
0.可以吗? 我们不能让构造函数变成virtual的。C++语言的创造者stroustrup博士给出了很好的解释:virtual是一项使用部分信息就完成工作的技术,我们在调用...
0.如何重载函数运算符 三种方法:friend function、common function以及member function,下面一一阐述 1.挑个简单的入手 假设我们...
1.纯虚函数是实现接口的良好选择,拥有纯虚函数的类是抽象类,我们无法声明一个纯虚类的对象,只有当类派生纯虚类并实现纯虚函数时,派生类才不是抽象类。此外我们可以在类外部给纯虚函...
0.前言 今天做笔试遇到一个问答题,问简述一种设计模式的用法。鄙人才疏学浅,设计模式之类的高大上存在一直都是没怎么研究过,唯一一个用过的就是一个被众人唾弃的单例模式,不过要具...
0.自定义类型需要满足的条件 我们需要为自定义类型Key实现一个Function Object,他需要遵守以下条件: 返回类型为std::size_t 接受单个参数,参数类型...
一、背景 有时候我们需要在第一次执行某个函数时进行一个特定的操作specifiedOperation,后面就不再执行specifiedOperation了,那么该怎么办。 二...
我也只是原博客的翻译,声明转载原博客即可
理解C++中的左值和右值Attention:this blog is a translation of https://www.internalpointers.com/post/understan...
Attention:This blog is a translation of Modern C++ Features - std:optional,which is wri...
Attention:this blog is a translation of https://www.internalpointers.com/post/c-rvalue-...
Attention:this blog is a translation of https://www.internalpointers.com/post/understan...