首页 新闻 会员 周边

C++为什么建议使用类外定义?

0
悬赏园豆:50 [已解决问题] 解决于 2019-06-05 15:18

初学C++,不懂为什么建议使用类外定义的方式,甚至是分文件类外定义?
这样的话声明和定义完全分离,修改的时候得找两个地方,不是更不方便吗?
再者,一个函数没有实现也可以通过编译,为什么不在声明的时候直接实现来避免这种情况呢?
类内定义是有什么弊端呢?

再者,类模板的类外定义时候,必须每一个成员实现都写一个template声明吗?有没有办法一次性声明呢?像类内定义那样直接写在class前头

VD630的主页 VD630 | 初学一级 | 园豆:82
提问于:2019-06-04 12:04
< >
分享
最佳答案
0

从别的地方得到答案了,定义也写在h里的话会导致多个cpp同时include了这个h的时候出现重复定义的链接错误

类模板成员的类外定义貌似是只能每一个成员都声明一次template

结帖

VD630 | 初学一级 |园豆:82 | 2019-06-04 16:12
其他回答(1)
0

推荐阅读园子里的一篇博文:一个C#开发者重温C++的心路历程

收获园豆:50
dudu | 园豆:31007 (高人七级) | 2019-06-04 14:11

文章不错,我也是C#老鸟新学C++,可是好像文章没有解答我的疑问啊。。。

支持(0) 反对(0) VD630 | 园豆:82 (初学一级) | 2019-06-04 14:31
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册