upc_ssogiv 2019-06-04 12:57 采纳率: 100%
浏览 686
已采纳

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

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

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

  • 写回答

2条回答 默认 最新

  • threenewbee 2019-06-04 13:49
    关注

    头文件包含更小,方便多人维护,可以分为多个源代码文件

    类内定义意味着头文件更大,编译更慢(虽然现在这不算很严重的问题,但是在早期,内存很小的时候,这很麻烦)

    模板写在外面,没办法一次性申明。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器