模板类 头文件 重复定义

模板类的定义和函数实现是不能分开的,这样多个文件包含模板类头文件时就会出现函数重复定义的问题,怎么避免这个问题呢... 模板类的定义和函数实现是不能分开的,这样多个文件包含模板类头文件时就会出现函数重复定义的问题,怎么避免这个问题呢 展开
 我来答
haiyangfenghuo
2014-09-28 · TA获得超过2439个赞
知道大有可为答主
回答量:2388
采纳率:0%
帮助的人:784万
展开全部
在文件的头文件中,需要加入预编译的语句。就是 #ifndef ... #define...#endif
目的就是为了防止重复编译。只需要把你的头文件加入到这里就好了。
如:
#ifndef MYTEMPLATE_H
#define MYTEMPLATE_H
#include "mytemplate.h"
......
......
#endif //MYTEMPLATE_H
更多追问追答
追问
预编译语句我加了,对于非模板类,程序可以实现类定义和函数定义的分离。现在问题是编译器不支持模板类定义和函数定义的分离
追答
请问你的编译环境是c++么,模板类的定义之后,如果函数定义需要引用,就需要加入 template
百度网友61b63dc64e
2014-09-28 · TA获得超过710个赞
知道小有建树答主
回答量:539
采纳率:100%
帮助的人:613万
展开全部
看你下你是怎么写的#ifndef #define #endif 部分!
追问

如果我不把模板类函数定义在头文件里,就会发生error:lnk2019,反之,则出现上述问题

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式