为了账号安全,请及时绑定邮箱和手机立即绑定

c++为什么要实现(.cpp)和声明(.h)分开?

c++为什么要实现(.cpp)和声明(.h)分开?

C++
慕桂英546537 2018-07-29 17:17:39
为什么要有透明性?如果别人不关心实现,他可以折叠代码(现在的IDE几乎都支持),只看函数原型和注释。不考虑需要替换【实现方法】的情况。不考虑继承、多态、虚函数等。加上#pragma once,不考虑重定义。
查看完整描述

2 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

楼上说的不对啊,分开定义根本目的并不是说重定义。就算你把函数定义在一个文件里面,照样可以的,不然前向声明还能存在吗?分开定义首先是为了简洁,谁会觉得把函数声明和定义都放在一个文件里面好?第二,在程序设计中,编写人员可能只提供一个.lib文件和头文件或DLL文件,使用者便可以应用到自己的程序中,也是方便了隐藏代码。不全面,请谅解。

追问

提供.lib&.dll也是为了隐藏代码对吗?这个(即实现了透明性)有什么好处?

追答

也不全是为这个啊。Lib文件和Dll文件是经过编译的,所以使用者使用的时候编译速度较纯写代码快很多。而且Dll函数也有导出函数和非导出函数。使用者只能使用导出函数。


查看完整回答
反对 回复 2018-08-02
  • 2 回答
  • 0 关注
  • 1327 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信