![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
Alex_1985f
这个作者很懒,什么都没留下…
展开
-
常量指针和指针常量
int a;int * const p = &a //指针常量,*p可以修改*p = 8;(OK) p不可以修改 p++(ERROR)int a,b;const int *p = &a; //常量指针 *p不可修改 *p = 8;(ERROR)原创 2013-04-16 22:32:38 · 355 阅读 · 0 评论 -
strdup
头文件:#include 用法:char *strdup(char *s);功能:复制字符串s说明:strdup()在内部调用了malloc()为变量分配内存,不需要使用返回的字符串时,需要用free()释放相应的内存空间,否则会造成内存泄漏举例:// strdup.c//#include #include #include int main(){原创 2013-04-17 22:06:31 · 433 阅读 · 0 评论 -
《海量数据处理常用思路和方法》
1.Bloom filter 适用范围:可以用来实现数据字典,进行数据的判重,或者集合求交集 基本原理及要点: 对于原理来说很简单,位数组+k个独立hash函数。将hash函数对应的值的位数组置1,查找时如果发现所有hash函数对应位都是1说明存在,很明显这个过程并不保证查找的结果是100%正确的。同时也不支持删除一个已经插入的关键字,因为该关键字对应的位会牵动到其他的关键字。转载 2013-06-22 21:17:33 · 341 阅读 · 0 评论 -
[C++ Primer] 顺序容器
顺序容器:vector,list, deque1.顺序容器的初始化:a. C c; 创建一个名为c的空容器b. C c(c2); 创建容器c2的副本c,c和c2必须有相同的容器类型,并存放相同类型的元素c. C c(b, e); c 初始化为一段元素的副本,使用迭代器时不要求容器类型相同,容器内的元素类型也可以不相同,只要能将要复制的元素转换为所构建的新容器的元素类转载 2013-11-24 16:06:16 · 490 阅读 · 0 评论 -
map 和 set
STL map和set的使用虽不复杂,但也有一些不易理解的地方,如: 为何map和set的插入删除效率比用其他序列容器高? 为何每次insert之后,以前保存的iterator不会失效? 为何map和set不能像vector一样有个reserve函数来预分配数据? 当数据元素增多时(10000到20000个比较),map和set的插入和搜索转载 2014-02-17 16:13:32 · 418 阅读 · 0 评论 -
auto
auto:用来声明自动变量。它是存储类型标识符,表明变量(自动)具有本地范围,块范围的变量声明(如for循环体内的变量声明)默认为auto存储类型。其实大多普通声明方式声明的变量都是auto变量,他们不需要明确指定auto关键字,默认就是auto的了。auto变量在离开作用域是会变程序自动释放,不会发生内存溢出情况(除了包含指针的类)。使用auto变量的优势是不需要考虑去变量是否被释放,比较安全转载 2014-02-17 18:08:39 · 649 阅读 · 0 评论 -
new(p) T1(value)
这叫place new,在指针p所指向的内存空间创建一个类型为T1的对象。调用的构造函数接受一个类型为const T2&(或其他兼容类型)的参数new placement 你可以简单的理解为C中的realloc,就是在已有空间的基础上,重新分配一个空间,可以不破坏原来数据,也可以把数据全部用新值覆盖 一下是我搜集的一些笔记 如果你想在预分配的内存上创建对象,用缺转载 2014-02-17 18:40:35 · 1059 阅读 · 0 评论