![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试总结
kvsp24
这个作者很懒,什么都没留下…
展开
-
面试中常问的STL
1Vector 1.1 底层是如何实现的 在堆中或栈中分配内存,元素连续存放,有保留内存,如果减少大小后,内存也不会释放.如果新值>当前大小时才会再分配内存.当该数组后的内存空间不够时,需要重新申请一块足够大的内存并进行内存的拷贝。扩容一般是扩大1.5倍或者2倍,vs中扩容的是1.5倍。内部使用allocator类进行内存管理,程序员不需要自己操作内存。对 vector 的任何操作,一旦引起空间重新配置,指向原 vector 的所有迭代器就都失效了。 vector就是一个动态数组,里面有一个指针指向一原创 2020-08-13 02:26:19 · 421 阅读 · 0 评论 -
指针与引用
1 指针 1.1 指针定义 string *ps1,ps2; stiing *ps1,*ps2; 1.2 typedef 用一种新类型名来替换新的类型名,也就是用类型起了一个别名。 typedef 类型名 标识符 1.3 void* 指针 C++ 提供一种特数的指针类型 void* ,它可以保存任何类型对象的地址: 只能进行有限个操作 与另一个指针进行比较 向函数传递 void* 指针或从函数返回 void* 指针 给另外一个void* 指针赋值 不允许使用void * 指针操作它所指向的对象原创 2020-08-11 00:25:11 · 170 阅读 · 0 评论 -
函数
1 参数传递 c 值传递 指针传递 c++ 值传递 指针传递 引用传递 准测 只是用值 const引用 会有值的变化 引用 引用与指针的区别 阅读体验性较差 2 内联函数 用inline 关键词修饰的函数 1 .成员函数称为内联函数 在类中定义的成员函数全部默认为内联函数,可以显性的加上inline标识符,或者不加。在类中声明的成员函数,如何加上了inline,则其为内联函数,如果没加,在类外定义该成员函数时加上了,则该成员函数也为内联函数。 2. 普通函数称为内联函数原创 2020-08-10 23:20:07 · 109 阅读 · 0 评论