更新时间:2019-01-03 20:56:07
封面
版权信息
序
绪论
第1章 C++编程常用技术
1.1 第一个C++程序
1.2 函数
1.3 数组
1.4 指针
1.5 引用
1.6 结构体、公用体、枚举
1.6.1 结构体、共用体、枚举的概念
1.6.2 结构体、共用体在内存单元占用字节数的计算
1.7 预处理
1.8 本章小结
第2章 面向对象的C++
2.1 类与对象
2.2 继承与派生
2.3 类的多态
2.4 本章小结
第3章 常用STL的使用
3.1 STL是什么
3.2 string
3.3 vector
3.3.1 vector是什么
3.3.2 vector的查增删
3.3.3 vector的内存管理与效率
3.3.4 Vector类的简单实现
3.4 map
3.4.1 map是什么
3.4.2 map的查增删
3.4.3 map的原理
3.5 set
3.5.1 set是什么
3.5.2 set的查增删
3.6 本章小结
第4章 编译
4.1 编译与链接
4.2 makefile的撰写
4.3 目标文件
4.3.1 ELF的文件类型
4.3.2 链接视图下的ELF内容
4.3.3 执行视图下的ELF内容
4.3.4 阅读ELF文件的工具——readelf
4.3.5 获得二进制文件里符号的工具——nm
4.3.6 减少目标文件大小的工具——strip
4.4 本章小结
第5章 调试
5.1 strace
5.2 gdb
5.3 top
5.4 ps
5.5 Valgrind
5.5.1 Valgrind概述
5.5.2 Linux程序内存空间布局
5.5.3 内存检查原理
5.5.4 Valgrind安装
5.5.5 Valgrind使用
5.6 本章小结
第6章 TCP协议
6.1 TCP协议
6.1.1 网络模型
6.1.2 TCP头部
6.1.3 TCP状态流转
6.1.4 TCP超时重传
6.1.5 TCP滑动窗口
6.1.6 TCP拥塞控制
6.2 TCP网络编程API
6.3 实现一个TCP server
6.4 TCP协议选项
6.5 网络字节序与主机序
6.6 封包和解包
6.7 本章小结
第7章 网络IO模型
7.1 4种网络IO模型
7.2 select
7.3 poll
7.4 epoll
7.5 本章小结
第8章 网络分析工具
8.1 ping
8.2 tcpdump
8.3 netstat
8.4 lsof
8.5 本章小结
第9章 多线程
9.1 多线程是什么
9.2 多线程的创建与结束
9.3 线程的属性
9.4 多线程同步
9.5 多线程重入
9.6 本章小结
第10章 进程
10.1 程序与进程
10.2 进程的创建与结束
10.3 僵尸进程
10.4 守护进程
10.5 本章小结
第11章 进程间通信
11.1 管道