
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
在对C++的问题时,位图和布隆过滤器是可以解决实际问题的,当面对很多数据时,我们的服务器内存又很小时,我们需要进行拆分数据进行映射储存,然后进行查找,下面分享一些常见面试题和解决方案。使用位图和布隆过滤器解决实际问题,同时哈希和布隆过滤器的结合使用。
C++98中提出了引用的概念,引用即别名,引用变量与其引用实体公共同一块内存空间,而引用的底层是通过指针来实现的,因此使用引用,可以提高程序的可读性。右值引用的最大作用:我们要转移数据时需要进行拷贝,太消耗资源,代价很大,有时候这些对象是临时对象就是所说的“将亡值”,这些临时对象马上就要销毁了,我们能不能不复制,直接把资源拿过来,下面介绍做法。对右值引用进行介绍,右值引用最大的作用在于移动构造,减
函数名功能thread()构造一个线程对象,没有关联任何线程函数,即没有启动任何线程thread(fn,...)构造一个线程对象,并关联线程函数fn,args1,args2,...为线程函数的参数get_id()获取线程idjoinable()线程是否还在执行,joinable代表的是一个正在执行中的线程。join()该函数调用后会阻塞住线程,当该线程结束后,主线程继续执行detach()
本文系统讲解了C++中五种特殊类设计模式:1. 堆专属类(HeapOnly):私有化构造函数,提供静态工厂方法,禁用拷贝构造;2. 栈专属类(StackOnly):屏蔽operator new实现栈限制;3. 禁止拷贝类(CopyBan):C++11推荐使用=delete语法;4. 禁止继承类(NonInherit):C++11可用final关键字;5. 单例模式:重点分析了饿汉模式、双检查锁懒汉

给40亿个不重复的无符号整数,没排过序。给一个无符号整数,如何快速判断一个数是否在这40亿个数中。这是一个面试题,我们要查找一个数,若是用map存,则要开很大的空间进行存储,很消耗内存。且时间效率很低,所以我们用位图进行存放数据看数据是否存在一、位图的概念位图本质是直接定址法,存储数据用vector,体现数据是否存在用0/1;所以使用位图可以节省空间,下面对位图的成员函数进行分析;位图的优点是用少
布隆过滤器时哈希+位图的应用,能够存储不同类型的数据,通过多个哈希来进行映射到位图上,可能存在误判,但是不存在的数据就是不存在,不可能无中生有。
对列表初始化的认识,使用initializer_list进行初始化列表,方便不在进行循环初始化容器,让容器和内置类型一样可以直接初始化,对变量类型推导,是解决类型太长,太难写的情况下使用,而aotu在一定的场景下不能使用,比如对函数返回类型,要进行运行函数才能推导,会增加消耗,而decltpye不需要执行函数就可以对函数的返回值值进行推导。
对C++11的一些函数的简单介绍。
对lambda的介绍,lambda和仿函数差不多,而且不用自己生成一个类,编译器会自动生成,所以是较为方便的。
实际使用中很多公司都会自定义自己的异常体系进行规范的异常管理,因为一个项目中如果大家随意抛异常,那么外层的调用者基本就没办法玩了,所以实际中都会定义一套继承的规范体系。这样大家抛出的都是继承的派生类对象,捕获一个基类就可以了。//服务器开发中通常使用的异常继承体系protected:int _id;// ...{};{};{};int main()try{//抛出对象都是派生类对象catch (c







