- 博客(11)
- 资源 (4)
- 收藏
- 关注
原创 STL学习笔记----4.容器 list
List 使用双向链表来管理元素。一. List 与 vector或deque的区别1.List 不支持随机存取。如果你要存取第5个元素,就必须从头开始数。2.任何位置插入和删除都很快。3.插入和删除不会造成其它元素pointers, references 和 iterators 失效。4.List 的迭代器是双向迭代器,所以凡是用到随机存取的迭代器的算法(
2012-02-29 18:03:24 2139 2
原创 STL学习笔记----3.容器 vector 和 deque
容器的 vector 和 deque,在操作方面比较相似,所以放在一起总结。除了共通操作外,它们还有自己的一些特点,具体如下:一. vectorvector 模塑出来一个动态数组,在末端添加和删除元素时,性能相当好,在前端或中部插入或删除元素时,性能不怎么样。1. vector 的容量vector 性能优异的原因是,就是分配了比其所容纳元素所需的,更多的内存空间。有两个
2012-02-29 15:08:52 2609 1
原创 STL学习笔记----2.容器的共通操作
每个容器都有很多操作,以下操作为所有容器共有的:一.构造,拷贝和析构ContType c 创建一个空容器,其中没有任何元素ContType c1(c2) 创建一个同种类形容器的一个copyContType c(beg,end) 创建一个容器,以区间[beg,end)做为元素初值
2012-02-28 18:10:44 2865 1
原创 STL学习笔记----1.概述
本系列是我学习 STL 的一些笔记,都是一些我工作中常用的主题。其中主要参考《C++标准程序库》这本书和一些网络上的博客。一.STL 组件1. 容器(Containers):用来管理某类对象的集合。2. 迭代器(Iterators):用来在一个对象群集的元素上进行遍历动件。迭代器的接口和一般指针差不多,以operator++累加,以operator* 提取所指的值。3.
2012-02-28 13:02:19 3461 3
原创 怎样学习一门新技术
引用孟岩所说的:“(孟岩)我主张,在具备基础之后,学习任何新东西,都要抓住主线,突出重点。对于关键理论的学习,要集中精力,速战速决。而旁枝末节和非本质性的知识内容,完全可以留给实践去零敲碎打。“原因是这样的,任何一个高级的知识内容,其中都只有一小部分是有思想创新、有重大影响的,而其它很多东西都是琐碎的、非本质的。因此,集中学习时必须把握住真正重要那部分,把其它东西留给实践。对于重点
2012-02-27 13:54:05 1566 2
原创 TCP/IP协议学习笔记----3.网络层IP协议
一. IP协议的格式二. IP选路详解IP选路是指用于选择发送IP报文的路径,IP选路算法必须选择通过多个物理网络发送数据报。1. IP交付IP选路分为直接交付与间接交付:直接交付: 当主机 A 要向另一个主机 B 发送数据报时,先要检查目的主机 B 是否与源主机 A 连接在同一个网络上。如果是,就将数据报直接交付给目的主机 B 而不需要通过路由器。
2012-02-24 17:51:33 1275
原创 TCP/IP协议学习笔记----2.链路层
一.在TCP / IP协议族中,链路层主要有三个目的: (1)发送和接收IP数据报。(2)发送ARP请求和接收ARP应答。(3)发送RARP请求和接收RARP应答。 二.链路层的封装格式:以IEEE 802.2/802.3(RFC1042)和以太网的封装格式(RFC894)为例需要注意:(1)这里的目的地址与源地址指的都是硬件地址(MAC地址),6个字节。
2012-02-24 16:02:47 1180
原创 TCP/IP协议学习笔记----1.概述
我觉的对于TCP/IP协议来说,除了学习每个协议本身的细结,就是关注各层之间是如何组织工作的。所以首先要了解分层,然后是封装与分用,也就是封包与解包。一. 分层这里把TCP/IP分为四层,如下图所示:二. 封装比如当应用程序用TC P传送数据时,数据被送入协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络。其中每一层对收到的数据都要增加一些首部信息
2012-02-24 15:37:15 1166
转载 程序在内存中存储详情(Text、Data、BSS、Heap、Stack....)
先看下面的一段程序:char *string = "Hello World";int iSize;char *fun(void){ char *p; iSize = 8; p = malloc(iSize); return p;}存放的位置(相同的颜色对应)Text段:上面标记为红色的部分(还包括整个f
2012-02-20 13:43:14 3567
转载 两种高性能I/O设计模式(Reactor/Proactor)的比较
http://www.cppblog.com/pansunyou/archive/2011/01/26/io_design_patterns.html
2012-02-17 17:48:11 1845
转载 详解C语言中volatile关键字
volatile提醒编译器它后面所定义的变量随时都有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据。如 果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变量由别的程序更新了的话,将出现不一致的现象。下面举 例说明。在DSP开发中,经常需要等待某个事件的触发,所以经常会写出这样的程序:short flag;v
2012-02-16 17:58:36 11172 4
Linux程序设计.第4版
2010-03-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人