社区
community_281
帖子详情
请问学STL有用吗?有什么书详细的讲STL?
freebeekf
2000-12-16 11:46:00
近来看了候捷先生的一些文章,知道了STL,对我简直是个震动,
看遍了图书馆也没有相关的书籍,不知是什么原因。
现在想找STL的书,不过不知学STL是否象候捷先生说的那样有用。
...全文
1089
38
打赏
收藏
请问学STL有用吗?有什么书详细的讲STL?
近来看了候捷先生的一些文章,知道了STL,对我简直是个震动, 看遍了图书馆也没有相关的书籍,不知是什么原因。 现在想找STL的书,不过不知学STL是否象候捷先生说的那样有用。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
38 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
marmoset
2001-11-16
打赏
举报
回复
to cber,
关于效率的评价,有没有比较全面又比较简单的检验方法(当然是相对来说),
比如生成一个大vector,再作某些copy,assignment,insert之类的操作就能比较客观的比较出两个版本的效率差异?
我的意思是说,在效率的层面上,应该依据哪些因素作为评价的(主要)依据?
是否能设计出比较客观的实验(也许已经有了),进行相对应的比较?
比如以前有人说VC的deque效率不高,那么他们是根据什么得出这样的结果呢?
非常感谢。
cber
2001-11-16
打赏
举报
回复
to marmoset:
VC中的allocator中用到了很多不标准的做法,使得它的效率比其他的STL要高。
VC对于STL的支持不好,关键在于它的编译器对于ANSI C++ Standard支持的不好,尤其是模板这方面,而STL主要又是基于ANSI中的许多模板特性上面,因此才会说VC对于STL支持不好。其实VC中的STL特性已经足够一般的使用了。
marmoset
2001-11-16
打赏
举报
回复
to cber
请问为什么VC下的STL效率最高?以前不是说VC对STL的支持并不好吗?如果有相关的文章,可否介绍一下?
而且好像VC版本STL的内存分配用的是new,而SGI版本用的是malloc,后者的速度应该更快才对呀???
rami
2001-11-16
打赏
举报
回复
STL是站在高层看问题。我们应该结合编程实践来体会STL带来的博大思想和好处。
linghuye
2001-11-16
打赏
举报
回复
STL真他妈的是个好东西,我的生活又有了奔头。
北京国家图书馆第一外文阅览室有几本经典著作,爽!
cber
2001-11-15
打赏
举报
回复
据评测,VC中的STL效率其实是最高的(这是myan在一封email中告诉我的,我还没有去读那篇评测文章)。不过由于VC中对于ANSI C++中的模板支持的太差,所以VC的STL用起来也不标准,感觉很怪,有很多的特性支持的不是很好。
softarts
2001-11-15
打赏
举报
回复
那STL到底有什么地方比MFC的集合类做得好的,请用事实说明一下
我不是很清楚,只是看到大家都这么说。
还有,VC中的STL实现效率到底有多低?原文出处在哪里?谁能证明一下?
谢谢!!
cber
2001-05-18
打赏
举报
回复
GP <> OOP
它们是两种不同的paradigms,个人认为以后GP的应用将会越来越广泛,估计以后的Design Patterns都将会完全的Generic,而我们只需要将Object包装一下使之符合GP的要求就行了:)
qqchen79
2001-05-17
打赏
举报
回复
GP是指设计对各种类型通用的类和方法。与经典的OOP相比,GP不仅需要考虑接口和实现的分离,而且需要对具体实现及其效率加一考虑(无论对那种类型,stack的进栈出栈动作都应该指需要常数时间O(1))。
C++中的GP的方法就是模版(template),而STL则是GP编程的一个典范(它几乎包含了所有GP应用的经典问题)。与此相比,STL中对OOP的继承和多态的应用就非常之有限,甚至在一些细节的问题上违反了OOP的原则!
学会STL我认为是C++程序员的必修课,auto_ptr(C++标准库的一部分)和container的使用基本可以避免与底层的指针混战的经历——避开指针而又不用花费GC的代价,java程序员是无福消受的。
java/C#中对GP支持的缺乏,只能使他们更是用于教学应用,鼓吹所谓真正的纯OOP :-)
学习STL的另一个附带的好处是Design Pattern的实践,Iterator是经典的Pattern,另外像Traits也被用绝了!还有Adapter等等等等。
emerald
2001-05-17
打赏
举报
回复
多谢多谢,以后多请教,
不过在程序员提到了generic java,
GP的路越来越广了
emerald
2001-05-16
打赏
举报
回复
知秋一叶很有研究啊,stl不是Generic Programming的唯一方法,
你能帮忙告诉我其他还有什么方法么?
qqchen79
2001-05-16
打赏
举报
回复
STL无论是从实用还是思想都值得学习。
但由于MS有意无意的忽略,导致VC中STL效率不好,而且MSDN中介绍也很少!
基本没有比较好的中文资料,学STL要看E文的了!
另外,STL应该是Generic Programming的典范,GP是否归于OOP当中,现在还没有定论。
vcmfc
2001-05-15
打赏
举报
回复
不学习STL,完全可以学懂ATL,只不过ATL中的有一小部分需要你懂一点STL。
chiefen
2001-05-15
打赏
举报
回复
to :freebeekf(潦潦草草)
不学stl ,能学懂atl吗?
yeka
2001-05-15
打赏
举报
回复
我们社今年会出版一批STL方面的经典著作,有侯捷先生翻译的,也有侯捷先生写作的,大约4、5本的样子。(华中科技大学出版社)
tianlon
2001-05-15
打赏
举报
回复
ATL与STL有何异同?
vcmfc
2001-02-05
打赏
举报
回复
俺就是专门利用春节期间来恶补一番!
ahao
2001-02-03
打赏
举报
回复
学了STL,才能体会面向对象软件开发的精髓
这么好的东西竟然有人说是...呵...
vcmfc
2001-02-03
打赏
举报
回复
同意!
freebeekf
2001-02-02
打赏
举报
回复
我觉得全国都乃井底之蛙,本应流行的东东,在中国就被打入了冷宫,连本书都找不到。。。。。。
加载更多回复(18)
c++标准库
stl
帮助文档
c++标准库
stl
帮助文档,对初
学
stl
十分有用
C++
STL
实例大全
C++
STL
实用例子大全,里面包含了很多的很有用的
STL
模版的例子
C++
STL
STL
实战开发精
讲
视频
《C++ 模板技术与
STL
实战开发》主
讲
:丁宋涛 泛型编程(Generic Programming)是一种全新的程序设计思想,它和
STL
是现代C++的精髓。可以说,不会
STL
很难称得上掌握了现代C++编程。
STL
...
STL
文档与简单的程序
学
C++却不会
STL
的人,没有人会说你入门.自己
学
习
STL
吧,这个真心必须
学
习.听我一番话,胜读3年
书
.里面也有程序,自己对着看吧.比看视频来的有用.这点分数= =我也只是收个意思
STL
容器 内容全,
讲
解
详细
包括Vector、Deque、sort、set、map等
非常实用的
STL
容器
讲
解
学
习,内容全,
讲
解
详细
包括Vector、Vector、String、Deque、sort、set、map,绝对有用!!
community_281
590
社区成员
254,054
社区内容
发帖
与我相关
我的任务
community_281
提出问题
复制链接
扫一扫
分享
社区描述
提出问题
其他
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章