![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
内推小仙女
字节跳动靠谱内推达人~ 校招实习社招,字节全岗位都可内推哦~ 欢迎找我内推!
展开
-
C/C++——map的基本操作总结
标准库map类型是一种以键-值(key-value)存储的数据类型。以下分别从以下的几个方面总结:map对象的定义和初始化map对象的基本操作,主要包括添加元素,遍历等1、pair类型1.1、pair类型的定义和初始化pair类型是在有文件utility中定义的,pair类型包含了两个...转载 2018-04-17 16:27:55 · 2498 阅读 · 0 评论 -
_beginthreadex和CreateThread的区别
在 Win32 API 中,创建线程的基本函数是 CreateThread,而 _beginthread(ex) 是C++ 运行库的函数。为什么要有两个呢?因为C++ 运行库里面有一些函数使用了全局量,如果使用 CreateThread 的情况下使用这些C++ 运行库的函数,就会出现不安全的问题。而 _beginthreadex 为这些全局变量做了处理,使得每个线程都有一份独立的“全局”量。所...转载 2018-05-13 18:28:02 · 178 阅读 · 0 评论 -
upper_bound 和lower_bound 的返回值问题
upper_bound 和lower_bound是二分查找,所以效率略高,但笔者在使用的时候发现偶尔会有一些问题,所以写了这篇文章,总结了一发。首先,最形象的一句话: upper_bound(i) 返回的是键值为i的元素可以插入的最后一个位置(上界) lowe_bound(i) 返回...原创 2018-04-26 09:46:37 · 1196 阅读 · 0 评论 -
C++中explicit的用法
C++提供了关键字explicit,可以阻止不应该允许的经过转换构造函数进行的隐式转换的发生,声明为explicit的构造函数不能在隐式转换中使用。C++中, 一个参数的构造函数(或者除了第一个参数外其余参数都有默认值的多参构造函数), 承担了两个角色。 1 是个构造;2 是个默认且隐含的类型转换操作符。所以, 有时候在...转载 2018-04-21 15:04:17 · 93 阅读 · 0 评论 -
C++中std是什么意思?
std::是个名称空间标识符,C++标准库中的函数或者对象都是在命名空间std中定义的,所以我们要使用标准库中的函数或者对象都要用std来限定。至于为什么将cout放到名字空间std中,是因为象cout这样的对象在实际操作中或许会有好多个,比如说你自己也可能会不小心定义一个对象叫cout,那么这两个cout对象就会产生...转载 2018-04-21 14:16:48 · 18583 阅读 · 0 评论 -
0X80000000与0X7FFFFFFF
给int类型赋值的话,0X7FFFFFFF代表最大值,0X80000000代表最小值INT_MAX 代表最大值, INT_MIN 代表最小值 1、先说明负数怎么储存(1) 十进制负数是以其补码储存在内存上验证:求-8在内存上以二进制形式1的个数思路是:拿变量,令值为1,与-8的二进制码的每一位做与运算,若与运算结果为1,则该位为1。结论:输入-8,结果为29。在32...转载 2018-04-18 19:27:29 · 5812 阅读 · 0 评论 -
sort函数详解
1.sort使用:#include using namespace std;作用:排序时间复杂度:n*lg(n)实现原理: STL 中的 sort 并非只是普通的快速排序,除了对普通的快速排序进行优化,它还结合了插入排序和堆排序。根据不同的数量级别以及不同情况,能自动选用合适的排序方法。当数据量较大时采用快速排序,分段递归。一旦分段后的数据量小于某个阀值,为避免递归调...转载 2018-04-12 21:35:58 · 542 阅读 · 0 评论 -
优先队列-堆
优先队列 队列是一个操作受限的线性表,数据只能在一端进入,另一端出来,具有先进先出的性质。有时在队列中需要处理优先级的情况,即后面进入的数据需要提前出来,这里就需要优先队列。优先队列是至少能够提供插入和删除最小值这两种操作的数据结构。对应于队列的操作,插入相当于入队,删除最小相当于出队...转载 2018-04-22 16:52:36 · 117 阅读 · 0 评论 -
优先队列priority_queue详解
优先队列引入优先队列是一种特殊的队列,在学习堆排序的时候就有所了解,点“击”查看。那么优先队列是什么呢? 说白了,就是一种功能强大的队列。如果不太清楚队列,可以看看我这篇博客。它的功能强大在哪里呢? 四个字:自动排序。优先队列的头文件&&声明首先,你需要#include&...转载 2018-04-22 16:38:56 · 135 阅读 · 0 评论 -
C++数组初始化为0
局部数组:没有默认值,如果声明的时候不定义,则会出现随机数(undefined);如果声明的长度与赋值长度不相等,则有,声明的长度>赋值长度,后面用0补足,声明的长度>赋值长度,发生编译错误;全局数组:声明时不赋值,默认值为0指针new:动态获取的内存,默认值undefined初始化为0:全局数组 int arr[10];局部数组 int arr[1...原创 2018-04-18 14:38:03 · 22415 阅读 · 1 评论 -
C++经典面试题集锦
1.new、delete、malloc、free关系delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数。malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要...转载 2018-04-12 15:22:32 · 165 阅读 · 0 评论 -
C++ 向量vector详解
vector是向量类型,它可以容纳许多类型的数据,如若干个整数,所以称其为容器,本文介绍一下使用方法。 vector 是向量类型,它可以容纳许多类型的数据,如若干个整数,所以称其为容器。vector 是C++ STL的一个重要成员,使用它时需要包含头文件:代码如下:#include<vector>;1一、vector 的初始化:可以有五种...转载 2018-04-28 20:50:15 · 521 阅读 · 0 评论