STL源码剖析-绪论
来源:互联网 发布:空白网名软件 编辑:程序博客网 时间:2024/06/05 10:16
STL,标准模板库,无处不存在GP(generic programming泛型编程),有多种实现版本。
GNU C++采用的STL为:SGI STL,源码下载,参考文档。
STL文件讲解一:<stl_config.h> 针对不同的编译器,定义各种环境常量。选取其中的针对GNU编译器的一部分。
# ifdef __GNUC__# if __GNUC__ == 2 && __GNUC_MINOR__ <= 7# define __STL_STATIC_TEMPLATE_MEMBER_BUG# endif# if __GNUC__ < 2 # define __STL_NEED_TYPENAME# define __STL_NEED_EXPLICIT# endif# if __GNUC__ == 2 && __GNUC_MINOR__ <= 8# define __STL_NO_EXCEPTION_HEADER# define __STL_NO_BAD_ALLOC# endif# if __GNUC__ == 2 && __GNUC_MINOR__ >= 8# define __STL_CLASS_PARTIAL_SPECIALIZATION# define __STL_FUNCTION_TMPL_PARTIAL_ORDER# define __STL_EXPLICIT_FUNCTION_TMPL_ARGS# define __STL_MEMBER_TEMPLATES# define __STL_CAN_THROW_RANGE_ERRORS // g++ 2.8.1 supports member template functions, but not member // template nested classes.# if __GNUC_MINOR__ >= 9# define __STL_MEMBER_TEMPLATE_CLASSES# define __STL_TEMPLATE_FRIENDS# define __SGI_STL_USE_AUTO_PTR_CONVERSIONS# define __STL_HAS_NAMESPACES//# define __STL_USE_NEW_IOSTREAMS# endif# endif# define __STL_DEFAULT_CONSTRUCTOR_BUG# ifdef __EXCEPTIONS# define __STL_USE_EXCEPTIONS# endif# ifdef _REENTRANT# define __STL_PTHREADS# endif# if (__GNUC__ < 2) || (__GNUC__ == 2 && __GNUC_MINOR__ < 95)# define __STL_NO_FUNCTION_PTR_IN_CLASS_TEMPLATE# endif# endif
0 0
- STL源码剖析-绪论
- 《stl源码剖析》剖析
- STL源码剖析(1)
- STL源码剖析(2)
- STL源码剖析(3)
- STL源码剖析(4)
- STL源码剖析(5)
- STL源码剖析(一)
- STL源码剖析
- STL 源码剖析
- STL源码剖析 [笔记]
- 《STL源码剖析》-- memory
- stl vector源码剖析
- 剖析STL auto_ptr源码
- STL-sort()源码剖析
- STL源码剖析总结
- STL源码剖析---vector
- STL源码剖析---list
- Monkey的常见问题和解决办法
- Bitmap.createBitmap函数有6个重载方法
- 【C语言连载五】--------指针
- git 一直无法push的解决办法
- [学习笔记]A星寻路算法实例
- STL源码剖析-绪论
- 数据库面对不同业务逻辑约束条件的选择
- oracle客户端连接linux服务器上的oracle
- 移动应用性能测试白皮书
- iOS 开发流程笔记
- WIN10 下搭建WAMP(独立安装httpd2.4.16 mysql7.4.7 php 5.6.12 phpMyAdmin 4.4.13版本)
- CSU 1555 splay模拟
- Monkey基本用法与常用参数
- Java程序员应该知道的10个调试技巧