为啥c++标准库一般只有头文件没有源文件?
这是没找到源文件的位置吧
llvm-mirror/libcxx
gcc-mirror/gcc
■网友
不是的。基本上都包含cpp源文件,有以下几种含义:1.源文件一般编译成动态链接库提供给你,位于bin目录下;2.这样分成头文件和源文件在开发时有利于代码编写和阅读,都放一个文件的话太大了,同时牵一发动全身,修改一个地方会导致该文件重新编译:3.有利于代码保护,只能看见源码的只有头文件,很多核心的函数实现以库的形式提供;所以并不是都放头文件里的,头文件里放的是内联函数和一些函数的声明。
■网友
如果放到cpp文件里,那就得有一个库,你生成可执行文件还得链接一下。全部在头文件里实现,你就可以include一下就全搞定了。
■网友
【为啥c++标准库一般只有头文件没有源文件?】 历史遗留,for separate compilation。
推荐阅读
- 山东细化残疾人托养国家标准助力残疾人最大化融入社会
- 黄金时间■新技术加持!江苏高标准农田灌溉效率大幅提升
- 江苏■全省信访事项办理群众满意率达95% 江苏基本建立信访业务标准化体系
- 湖北发布首批21项《楚菜标准》
- 为啥看到书柜上的藏书会有心旷神怡的感觉
- 为啥知乎上普便有一种【我在北上广深打工,所以拥有更好的视野】这样的错觉
- 为啥工商银行的用户体验如此之差
- 汽车|看了中消协4S店服务测评调查结果,终于知道法系车为啥卖不好了
- 你为啥从窝窝商城离职?
- |打造垃圾分类管理“姑苏标准”
