另外我把Bjarne Stroustup 的<<c++ programming languge >>.Meyer的
<<Effective C++>> ,Stan Lippman 的<<c++ primer>>,侯捷先生的《STL 源码剖析〉》 一口气买下来了!害的
我节省了几个月的生活费!但是我主要看thinking in c++,c++primer,现在我在看STL源码剖析,我想向各位请教的是:Builder 里封装成了200多个组件,范型编程好象在这里没有用,在VC里也用的少!那泛型编程在那儿用?另外我好象只是一个劲的看,做项目实践不多!这是不是用效不大?我只是个学生,实践就很少了,请大家给我接惑!
6 个解决方案
#1
BCB用的OO方式,只是应用单根多继承体系
#2
有些时候不能强求,理解和掌握了一种技术,到适合的时候你自然就用上了。
虽然STL非常好用,但是高层次的泛型技术并不是容易使用的,主要在于设计,不过简单模板之类的还是满常用的。
MFC没有使用泛型,可能是因为年代的关系。
BCB VCL没有使用的原因很简单,vcl基于Delphi,而Object Pascal目前到目前也不支持模板(不过Borland自己掌握者Object Pascal,哪天支持模板也有可能)。
不过ATL/WTL使用了模板技术,VC中也有一套容器类使用了泛型技术。
虽然STL非常好用,但是高层次的泛型技术并不是容易使用的,主要在于设计,不过简单模板之类的还是满常用的。
MFC没有使用泛型,可能是因为年代的关系。
BCB VCL没有使用的原因很简单,vcl基于Delphi,而Object Pascal目前到目前也不支持模板(不过Borland自己掌握者Object Pascal,哪天支持模板也有可能)。
不过ATL/WTL使用了模板技术,VC中也有一套容器类使用了泛型技术。
#3
同意artman(服务器太忙) 的观点,很多专家都预计,泛型技术在以后会有更好的发展!STL—〉ATL—〉WTL,模式会有很好的空间!
#4
其实你不管些什么都要用到简单的数据结构和算法吧。
至少可以用vector代替数组
至少可以用vector代替数组
#5
我来给你举一个实际的例子,我做过的一个项目中有这样的要求:检查20万条计费信息中有没有重复的信息。如果用set,这个要求是很容易做到的。如果不用set,就非常困难,即使能够完成,也相当于重新写了一遍(不完全的)set。
可惜当时我不会stl,就用数组和折半法瞎凑合了一气,居然性能也还过得去。如果当时会stl,就会事倍功半了。
再比如将若干字符串、整数、浮点数连接成一个大字符串的工作,用流就比用sprintf优美的多。
你所说得VCL,大部分是为了GUI,MFC中倒是有一些自己的容器类,不过你用用就知道了,全是shit。
可惜当时我不会stl,就用数组和折半法瞎凑合了一气,居然性能也还过得去。如果当时会stl,就会事倍功半了。
再比如将若干字符串、整数、浮点数连接成一个大字符串的工作,用流就比用sprintf优美的多。
你所说得VCL,大部分是为了GUI,MFC中倒是有一些自己的容器类,不过你用用就知道了,全是shit。
#6
ATL WTL就是用泛型!
#1
BCB用的OO方式,只是应用单根多继承体系
#2
有些时候不能强求,理解和掌握了一种技术,到适合的时候你自然就用上了。
虽然STL非常好用,但是高层次的泛型技术并不是容易使用的,主要在于设计,不过简单模板之类的还是满常用的。
MFC没有使用泛型,可能是因为年代的关系。
BCB VCL没有使用的原因很简单,vcl基于Delphi,而Object Pascal目前到目前也不支持模板(不过Borland自己掌握者Object Pascal,哪天支持模板也有可能)。
不过ATL/WTL使用了模板技术,VC中也有一套容器类使用了泛型技术。
虽然STL非常好用,但是高层次的泛型技术并不是容易使用的,主要在于设计,不过简单模板之类的还是满常用的。
MFC没有使用泛型,可能是因为年代的关系。
BCB VCL没有使用的原因很简单,vcl基于Delphi,而Object Pascal目前到目前也不支持模板(不过Borland自己掌握者Object Pascal,哪天支持模板也有可能)。
不过ATL/WTL使用了模板技术,VC中也有一套容器类使用了泛型技术。
#3
同意artman(服务器太忙) 的观点,很多专家都预计,泛型技术在以后会有更好的发展!STL—〉ATL—〉WTL,模式会有很好的空间!
#4
其实你不管些什么都要用到简单的数据结构和算法吧。
至少可以用vector代替数组
至少可以用vector代替数组
#5
我来给你举一个实际的例子,我做过的一个项目中有这样的要求:检查20万条计费信息中有没有重复的信息。如果用set,这个要求是很容易做到的。如果不用set,就非常困难,即使能够完成,也相当于重新写了一遍(不完全的)set。
可惜当时我不会stl,就用数组和折半法瞎凑合了一气,居然性能也还过得去。如果当时会stl,就会事倍功半了。
再比如将若干字符串、整数、浮点数连接成一个大字符串的工作,用流就比用sprintf优美的多。
你所说得VCL,大部分是为了GUI,MFC中倒是有一些自己的容器类,不过你用用就知道了,全是shit。
可惜当时我不会stl,就用数组和折半法瞎凑合了一气,居然性能也还过得去。如果当时会stl,就会事倍功半了。
再比如将若干字符串、整数、浮点数连接成一个大字符串的工作,用流就比用sprintf优美的多。
你所说得VCL,大部分是为了GUI,MFC中倒是有一些自己的容器类,不过你用用就知道了,全是shit。
#6
ATL WTL就是用泛型!