菜鸟笔记
提升您的技术认知

C++ 笔记 第46页

C++中的static关键字大揭秘

菜鸟阅读 : 2230赞(0)

静态全局变量 特性 1. 存放空间:存放在全局数据区 从声明时开始初始化main函数结束销毁 2. 初始化:如果没有初始化则会被默认初始化为0 在首次用到时进行初始化 3. 作用域:作用域为整个源文件, 4. 区别:和全局变量的区别是 静态...

C++ STL中的vector的内存分配与释放

菜鸟阅读 : 3261赞(0)

1.vector的内存增长 vector其中一个特点:内存空间只会增长,不会减小,援引C++ Primer:为了支持快速的随机访问,vector容器的元素以连续方式存放,每一个元素都紧挨着前一个元素存储。设想一下,当vector添加一个元素...

C++内功修炼—-类型

菜鸟阅读 : 3144赞(0)

  本文将介绍 C++ 里面的 基本类型(引用 指针  结构体) 类型转换(static_cast、dynamic_cast、const_cast、reinterpret_cast), 类型处理(typedef auto...

STL中的顺序容器之deque

菜鸟阅读 : 3461赞(0)

0.概述 什么是deque呢? 一句话来概括 ,deque是一种 双向开口的”连续”线性空间存储数据的数据结构(注意这里的连续打了双引号,后面会解释) 咱们来对比一下deque和vector的一些区别 优点...

一篇文章搞懂STL中的顺序容器之list

菜鸟阅读 : 2790赞(0)

list是什么?    list本质上就是双向链表 相对与上一篇所讲的vector,我们知道双向链表有它自己的优点,首先空间利用比较灵活,所以省空间. 而且插入删除元素都是常数时间 下面将参照list的源码,将其分为下面...

一篇文章搞懂STL中的空间配置器allocator

菜鸟阅读 : 3239赞(0)

Table of Contents 0.引入 1.标准的空间配置器allocator 2.更为高效的空间配置器alloc 2.1—-对象的构造与析构 2.1.1 对象的构造:::construct(); 2.1.2对象的析构::...

C++内功修炼—-变量

菜鸟阅读 : 2097赞(0)

  1.extern 1)extern修饰变量的声明 如果文件a.c需要引用b.c中变量int v,就可以在a.c中声明extern int v,然后就可以引用变量v。 2)extern修饰函数的声明 如果文件a.c需要引用b.c中的函数,...

C++神奇的Traits

菜鸟阅读 : 3831评论(0)赞(0)

介绍traits的文章很多,但感觉大部分文章的说明都很晦涩难懂,把一个并不很复杂的C++模板的应用描述的过于复杂。忍不住想把自己的理解跟大家分享一下,或许我也只是掌握了一点traits的皮毛而已,但也希望这些皮毛能略微抓住你的眼球,带给你一...

细说 C++ Traits Classes

菜鸟阅读 : 2494评论(0)赞(0)

最近在看侯捷的《STL源码剖析》,看到第三章有关 traits 的介绍,被搞得一头雾水,看了半天不知所云。为了彻底了解这个技法的原理,硬着头皮上网查了资料,并结合 Scott Meyers 的 《Effective C++》,总算是把 tr...

一篇文章彻底搞懂哈希表

菜鸟阅读 : 5986赞(0)

1.原理讲解  HashTable就是散列表((哈希表),将从下面几个方面来讲解散列表的原理 1.1散列表的概述 在说散列表之前,我们先说一下散列技术. 什么叫散列技术呢?一句话来说,散列技术是一种查找技术,而且是一种”...