模板的声明和实现为何要放在头文件中?
2016-03-18 16:34
337 查看
源: http://blog.csdn.net/lqk1985/archive/2008/10/24/3136364.aspx
如何组织编写模板程序
发表日期: 1/21/2003 12:28:58 PM
发表人: Nemanja Trifunovic
前言
常遇到询问使用模板到底是否容易的问题,我的回答是:“模板的使用是容易的,但组织编写却不容易”。看看我们几乎每天都能遇到的模板类吧,如STL, ATL, WTL, 以及Boost的模板类,都能体会到这样的滋味:接口简单,操作复杂。
我在5年前开始使用模板,那时我看到了MFC的容器类。直到去年我还没有必要自己编写模板类。可是在我需要自己编写模板类时,我首先遇到的事实却是 “传统”编程方法(在.h文件声明,在.cpp文件中定义)不能用于模板。于是我花费一些时间来了解问题所在及其解决方法。
本文对象是那些熟悉模板但还没有很多编写模板经验的程序员。本文只涉及模板类,未涉及模板函数。但论述的原则对于二者是一样的。
问题的产生
通过下例来说明问题。例如在array.h文件中有模板类array:
// array.h
template
如何组织编写模板程序
发表日期: 1/21/2003 12:28:58 PM
发表人: Nemanja Trifunovic
前言
常遇到询问使用模板到底是否容易的问题,我的回答是:“模板的使用是容易的,但组织编写却不容易”。看看我们几乎每天都能遇到的模板类吧,如STL, ATL, WTL, 以及Boost的模板类,都能体会到这样的滋味:接口简单,操作复杂。
我在5年前开始使用模板,那时我看到了MFC的容器类。直到去年我还没有必要自己编写模板类。可是在我需要自己编写模板类时,我首先遇到的事实却是 “传统”编程方法(在.h文件声明,在.cpp文件中定义)不能用于模板。于是我花费一些时间来了解问题所在及其解决方法。
本文对象是那些熟悉模板但还没有很多编写模板经验的程序员。本文只涉及模板类,未涉及模板函数。但论述的原则对于二者是一样的。
问题的产生
通过下例来说明问题。例如在array.h文件中有模板类array:
// array.h
template
相关文章推荐
- 使用JDBC读取本地的Excel文件并批量更新数据
- Java集合框架:Arrays工具类
- Object-C @property 小结
- C和指针-- 1 & 2
- oracle学习笔记1-安装
- Tomcat迁移到weblogic的几个问题
- C++服务器(三):多平台的构思与Windows下的tcp_socket
- Java集合框架:Arrays工具类
- android错误总结
- 关于bootstrap datetimepicker位置显示错误的bug修复
- HDOJ 1050 moving tables 之线段树解法
- android 基于树结构的任意层级列表
- Module中引用Module中的Activity时报错了,错误是找不到R文件中的id引用
- 年后的大变故之用心的去实践,用心的去追求
- InnoDB和MyISAM的六大区别
- 交叉编译和交叉调试环境搭建及使用
- Xms Xmx PermSize MaxPermSize 区别
- 基于javascript实现页面加载loading效果
- SSH整合时出现的问题
- 3、ExtJs写的js页面中的输入框的值如何传输到Java后台Controller控制层?