社区
C语言
帖子详情
----------各位高手,我想到一个难题.-----------
femalelover
2006-04-26 09:55:07
C++库,Windows的库一个个又笨又重.
理由一, 引入一个#include<string> 编译出来的程序比直接使用char*时要大得多;
理由二, 硬件再快, 内存再大, 速度快与体积小永远是程序员的追求.比如游戏程序, 做游戏的菜鸟应该感觉得到自己的垃圾小游戏跑起来耗资源之多简直无敌.
....省略N个.
难题就是: 这些系统库应该是能改造的,保留特定程序中用得到的,剔除那些冗余的. 可是,怎么入手呢?
...全文
169
7
打赏
收藏
----------各位高手,我想到一个难题.-----------
C++库,Windows的库一个个又笨又重. 理由一, 引入一个#include 编译出来的程序比直接使用char*时要大得多; 理由二, 硬件再快, 内存再大, 速度快与体积小永远是程序员的追求.比如游戏程序, 做游戏的菜鸟应该感觉得到自己的垃圾小游戏跑起来耗资源之多简直无敌. ....省略N个. 难题就是: 这些系统库应该是能改造的,保留特定程序中用得到的,剔除那些冗余的. 可是,怎么入手呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
plamlover
2006-04-27
打赏
举报
回复
你过于当心了....不知道你有没有看过那些头文件(没有用到的东西都不会编译的,之所以复杂,因为它很完善)...你的想法是多余的
如果你一定要自己去实现那些函数,只会让你的程序漏洞百出(如果你不高手的话)
adintr
2006-04-27
打赏
举报
回复
库中没用到的函数不会连接到你的 exe 中,不用担心
femalelover
2006-04-27
打赏
举报
回复
找不到建议没关系,楼上总算提到了本书.
DLL与EXE都是二进制,但由于DLL做出来后必须为以后的被调用做准备. 所以与EXE在生成过程上是有区别的.
code_tin
2006-04-27
打赏
举报
回复
至于楼上提到的解决方案
如果要重构库,那就比较麻烦了
不过我们还是可以从减少include的使用入手
exceptional c++有这方面的论述
有些时候我们只是需要一些结构的定义
这个时候就不用include整个头文件了
把定义申明一下就可以了.
code_tin
2006-04-27
打赏
举报
回复
DLL的编译原理和EXE一样
你没有用到的东西不会被加到里面去
楼主说的加上string就会大许多的情况只有MINGW下面才会有
使用了string整个exe会大400k左右
这个是由于GCC连接器的缺陷
MINGW官方FAQ里面也提到了这点,不过没说解决方案
你用VC2003以后的就不会有这个问题
文件最多大10k左右.
femalelover
2006-04-27
打赏
举报
回复
EXE中没有你没用到函数?
----------------------
EXE中没什么影响,但一般的.dll和.lib中就有影响了. 尤其是.lib
改造库据我所知并不少见, 尤其以游戏程序为多,专业的的DX游戏开发,里面的DX头文件等常常都在MS发布的基础上有所改动.
逸学堂
2006-04-27
打赏
举报
回复
C++类库,windows类库,为了保持通用和兼容型,有时候必须做效率的牺牲。但是即使这样对于大多用户来说,他依然是高效率的。至少99%程序员写不去既有兼容性,又有效率,同时体积还小的类库来。
分析一个软件效率高低,不要用想当然。要用不同的分析软件不断的测试,才可能找到真正的瓶颈。真正分析出效率瓶颈后,再考虑解决问题方案。
3xian 退役帖------acm精神世界的捍卫者
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
最后一天,漫天飘起了雪花,假装欢送我离去...
【转】让人深思的退役贴 2014-11-23 11:53 53人阅读 评论(0) 收藏...
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
----------
------- ...最后一天,漫天飘起...
活著就为改变世界---史蒂夫.乔布斯…
这个后来很受欢迎的模型有
一个
黑白屏幕,还有
一个
内置的磁盘驱动器,当然还允许再加
一个
。然而关于麦金托什机的
一个
设计特点,即它没有用以增加计算机性能的扩展插槽和插件,这成为麦金托什机推向市场后一直备受争议...
(2)mifare卡读写器开发心得『转』--整理重发贴
发信人:yaoji104 发表时间:2002-12-16 16:24:49
----------
----------
----------
----------
----------
--...关于防冲突的几个问题: 1、bitFraming register的bit4 to bit6,当冲突发生在bit7时RxAlign=?(RxAlign
学习成功:中学生成就梦想的15堂必修课
管斌全:《学习成功:中学生成就梦想的15堂必修课》笛案:自信国内外成功学的著作看过不少,但我只向人推荐管斌全的作品。... 第
一个
版本是由北京海潮出版社(2002年10月)出版,书名为《我信我能我
C语言
70,020
社区成员
243,264
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章