C++中,怎么将函数模板的声明和定义分开写?

C++中,能不能将函数模板的声明和定义分开写,比如将声明写在.h文件中,定义写在.cpp文件中。如果能,具体应该怎样写,格式又是什么样的?如果不能,为什么?能把不能的原因... C++中,能不能将函数模板的声明和定义分开写,比如将声明写在.h文件中,定义写在.cpp文件中。
如果能,具体应该怎样写,格式又是什么样的?
如果不能,为什么?
能把不能的原因说得再详细点吗?
展开
 我来答
娜莉China
推荐于2016-05-29 · 知道合伙人教育行家
娜莉China
知道合伙人教育行家
采纳数:15251 获赞数:207514
没有

向TA提问 私信TA
展开全部
不行。

目前c++还不支持模板定义与实现分开的写法,不过,这个功能已经在0x标准里出现了。
函数模板要被实例化后才能成为真正的函数,在使用函数模板的源文件中包含函数模板的头文件,如果该头文件中只有声明,没有定义,那编译器无法实例化该模板,最终导致链接错误。
gphone2008
2010-12-25 · TA获得超过380个赞
知道小有建树答主
回答量:224
采纳率:100%
帮助的人:159万
展开全部
据我所知,目前c++还不支持模板定义与实现分开的写法,不过,这个功能已经在0x标准里出现了。希望新的标准尽快推出。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zxc570157491
2010-12-25 · TA获得超过100个赞
知道答主
回答量:99
采纳率:0%
帮助的人:93.6万
展开全部
现在主流的编译器还都没有实现将模板的定义和实现分开。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Eli2021
推荐于2016-07-03 · TA获得超过664个赞
知道小有建树答主
回答量:1266
采纳率:72%
帮助的人:340万
展开全部
在vc++6下面试了一下,不行:
函数模板要被实例化后才能成为真正的函数,你在使用函数模板的源文件中包含函数模板的头文件,如果该头文件中只有声明,没有定义,那编译器无法实例化该模板,最终导致链接错误。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式