学习笔记
反正感觉有用的就总结一下,也是面试遇到的比较多的问题
阿童木爱刷题
这个作者很懒,什么都没留下…
展开
-
环形缓冲区ring_buffer的c语言实现
为了兑现自己的承诺,之前说了要写一篇关于ring_buffer的学习总结,现在就写。嗯,通过百度和咨询了一下实验室的信息安全大神,加上自己的领悟,就写一个笔记吧,俗话说“好记性不如烂笔头,指不定哪天能排上用场”,可能会有些错误,希望能指正。一、环形缓冲区ring_buffer介绍ring_buffer 称作环形缓冲,就是取内存中一块连续的区域用作环形缓冲区的数据存储区(这里只考虑单线程,即只有...原创 2019-08-30 19:07:41 · 4747 阅读 · 0 评论 -
c++ static关键字用法总结
也是因为在最近的面试中,几乎每次必问static关键字的用法,但是总会说漏一点,因为自己平时写代码貌似用得也不多(菜鸡嘛,可以理解)。要想答得完美,还是得总结一下,共有五种用法,下次就直接背给面试官听咯,不不不,得理解,用代码说服之。1、修饰局部变量位于静态存储区,作用域为局部,但有点类似全局变量了,即赋值一次后,就会一直保存这个值,然后可以进行常规的运算,虽不能在局部作用域外对他访问,但仍然...原创 2019-09-04 21:14:09 · 185 阅读 · 0 评论 -
c++ 虚函数、纯虚函数、析构函数及虚析构函数的用法总结
最近也是被这几个虚函数和析构函数搞得有点糊,做个总结吧,千万别被问,问就是背诵一遍。1、虚函数与纯虚函数虚函数的主要作用是建立抽象模型,从而可以达到方便扩展系统的目的。纯虚函数是是一种特殊的虚函数,可以说是虚函数的子集,它可以不需要再基类中写函数实现,而虚函数不写函数实现就会报错。 为啥会有虚函数?为了方便实用多态,编程者常常需要在基类中定义虚函数。在很多情况下,基类本身生成对象是不合情理...原创 2019-09-05 22:47:50 · 716 阅读 · 0 评论 -
malloc、free和new、delete的用法总结
mallo和new的用法也是经常容易被混淆,很多人只知道一个是c语言里的,一个是c++里的,一知半解吧,或万一真被面试官问到,就真的悔不当初了,那咱就做一个总结吧,也不深究太底层,就是为了把它们的大致用处和基本原理理清楚一遍。1、malloc和free函数malloc中文叫做动态内存分配,如果分配成功则返回指向被分配内存的指针,分配失败返回空指针NULL。(类型 *)malloc(int s...原创 2019-09-06 15:16:03 · 392 阅读 · 0 评论 -
c++ 指针和引用的用法总结
1、指针指针是一个变量,只不过这个变量存储的是一个地址,它指向内存的一个存储单元。int a=1;int *p=&a; //p是一个指针变量,指向a的存储单元2、引用引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。int a=1;int &b=a; //b是整型变量a的一个引用,事实上a和b是同一个东西,在内存占有同一个存储单元。3、二者的区别...原创 2019-09-07 10:42:32 · 270 阅读 · 0 评论 -
c++ struct和class的用法总结
由于自己是直接系统学习的c++,所以对struct的用法还是很模糊,感觉它就是不如class,但是具体有哪些不同,除了知道默认访问权限不同,就不知道别的,所以还是有必要总结一番。1、c和c++中struct的区别c中的struct没有成员函数,而c++中的struct是对c中的struct进行了扩充,所以增加了很多功能,可以说跟class已经有很多相似之处。且在c中使用结构体时需要加上stru...原创 2019-09-07 22:35:46 · 2319 阅读 · 1 评论 -
c++ map的用法总结
1、map的定义map是STL的一个关联容器,通过key-value的形式处理数据(一对一),由于这个特性,它可以在我们处理一对一数据的时候,在编程上提供快速通道。2、map的特点a.头文件#include <map>b.map的内部结构是红黑树c.key定义后不可修改,value可以修改,元素是自动按照键key进行排序(即使插入一个新的pair也会从新排序,在遍历时按照...原创 2019-09-09 10:32:56 · 251 阅读 · 0 评论 -
c++ const与#define的用法总结
1、consta.可以用来定义常量、修饰函数参数、修饰函数返回值等三个作用。(编译阶段)b.被Const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。2、#define#define是一个宏定义,可以定义一个全局变量,在整个文件中都可以使用。(预编译阶段)3、二者的区别a. const有类型,define无类型(最重要的)define只是在预处理阶段做个简单的替换...原创 2019-09-11 17:19:36 · 371 阅读 · 0 评论 -
c++ 分割字符串的用法总结
c++不像Java语言有专门分割字符串的关键字split,所以处理起来并不容易(至少是对初学者的我来说是这样的),赶上今天某讯飞的笔试题碰到了,所以在这里做个总结吧。1、getline关键字虽然c++没有专门分割字符串的函数,但是有getline方法(位于string类中),就可以应对分割字符串的问题了,getline函数的参数有两种:istream& getline(istream...原创 2019-09-12 13:46:39 · 827 阅读 · 0 评论