Effective C++看书笔记(8):杂项讨论

杂项讨论

  • 53:不要轻忽编译器的警告
  • 54:让自己熟悉包括TR1在内的标准程序库
  • 55:让自己熟悉Boost

53:不要轻忽编译器的警告

尽量无警告。

54:让自己熟悉包括TR1在内的标准程序库

c++98列入的C++标准程序库主要成分

  • STL:覆盖容器,迭代器,算法(find,sort,transform),函数对象,各种容器适配器(stack,priority_queue)和函数对象适配器(mem_func,not1)
  • Iostreams:覆盖用户自定义缓冲功能,国际化IO,以及预先定义好的对象cin,cout,cerr和clog
  • 国际化支持:wchar_t,wstring
  • 数值处理:包括复数模板和纯数值数组
  • 异常阶层体系
  • C89标准程序库

TR1有14个新组件

  • 智能指针:tr1::shared_ptr和tr1::weak_ptr。
  • tr1::function:没怎么懂
  • tr1::bind:
  • Hash tables,用来实现sets,multisets,maps和multi-maps。
  • 正则表达式:
  • Tuples(变量组):
  • tr1::array
  • tr1::mem_fn
  • tr1::reference_wrapper
  • 随机数
  • 数学特殊函数
  • C99兼容扩充
  • Type traits
  • tr1::result_of

55:让自己熟悉Boost

一群大佬写的库

包含

  • 字符串与文本处理:包括了正则表达式,语汇单元切割和解析
  • 容器:包括数组,大小可变的bitsets以及多维数组
  • 函数对象和高级编程:没太懂
  • 泛型编程:没太懂
  • 模板元编程:没太懂
  • 数学和数值:
  • 正确性与测试
  • 数据结构
  • 语言间的支持:包括允许C++和python之间的无缝互操作性
  • 内存:覆盖Pool程序库,用来作出高效率而区块大小固定的分配器,以及多变化的智能指针,包括TR1智能指针。另有一个Non-TR1智能指针是scoped_array,那是个auto_ptr-like智能指针,用来动态分配数组
  • 杂项;CRC检验,日期和时间的处理,在文件系统上来回移动等等。

等等

你可能感兴趣的:(C++语言,c++,笔记,开发语言)