视频教学
离散数学1离散数学2离散数学3
离散数学4离散数学5离散数学6
离散数学7离散数学8离散数学9
离散数学10离散数学11离散数学12
离散数学13离散数学14离散数学15
离散数学16离散数学17离散数学18
离散数学19离散数学20离散数学21
离散数学22离散数学23离散数学24
离散数学25离散数学26离散数学27
离散数学28离散数学29离散数学30
离散数学31离散数学32离散数学33
离散数学34离散数学35离散数学36
离散数学37离散数学38离散数学39
离散数学40离散数学41离散数学42
离散数学43离散数学44离散数学45
离散数学46离散数学47离散数学48
离散数学49离散数学50离散数学51
离散数学52离散数学53离散数学54
离散数学55
posted @ 2006-07-19 18:37 张沈鹏 阅读(674) | 评论 (2)编辑 收藏
 

铁路总是漫长的,漫长的像活着的岁月。

坐在充满疲惫的车厢,看着那一张张陌生的面庞,仿佛是在欣赏画家笔下的油画,没有旁白,只有想象。

列车缓缓的颠簸有如童年的摇篮,让人在不知不觉中昏昏欲睡。车门外的快乐抑或是悲伤,这时已经不再那么重要。好似路边的风景,至少现在,我们之间保持着距离。

走走停停,火车不紧不慢的前行,夜色让周围的一切变得安静,除了那吱吱喳喳摇摆的声音。忽然间感到有一种莫名的恐怖,在这无人可以倾诉的时刻,即使是罐头里的沙丁鱼也会懂得孤独。

带上那种最廉价的MP3,试图用音乐来麻醉。人总是能学会逃避,我不知道那歌声中纯的像雪一样的爱情,是否还有谁会去真的相信。

喜欢读鲁迅的文章,喜欢那一针见血的快感。虽然我早已明白,生活永远不会是那纸片上的文字游戏。正如火车的终点站绝对不是火车票上的那个方方正正的地名。

莫名其妙的觉得自己不过是电脑上的一段Flash动画,通过那长长电话线,从一端被发送到另一端。远方的亲朋好友则坐在电脑前面不耐烦的等待,等那蓝色的进度条从1%慢慢读到100%。也许,我们真的生活在黑客帝国,伟大的救世主正被一段不起眼的恶意代码封锁在精神病院。而人类存在的唯一意义只不过是大脑可以用来当发电机。

一行一行的码字是一种痛苦,尤其在明知自己无望用这段文字垃圾骗取一点点真金白银的时候。但从孟子的天将将大任开始,地球人便有一种受虐倾向。所以我一边高喊“苦难,我的大学”,一边我思故我在,我在故我思。

张沈鹏
6月14晚4点于K246车
zsp007@gmail.com

posted @ 2006-07-19 17:00 张沈鹏 阅读(236) | 评论 (0)编辑 收藏
 
回首大学两年,觉得学到的太少,不懂的太多。
学校的课程与兴趣总是相差太远,自己的理想在同学间总是很难找到共同的语言。
心浮气燥,在一个孤独的空间。
posted @ 2006-07-11 08:03 张沈鹏 阅读(284) | 评论 (0)编辑 收藏
 
原文:http://blog.csdn.net/myan/archive/2006/05/25/754239.aspx

今天跟一些朋友在信件里讨论C++的使用。一个还在学习C++的朋友,认为要把重点放在虚函数、多态性、STL上。我认为学习的时候这样考虑肯定是对的,但是真正开发的时候,不能因为你掌握了OO、generic这些先进武器,就非要用上这些东西,以示区别不可。谨慎合理地使用语言的机制是开发良好C++程序的关键,至少在心态上是关键。


下面是信件内容的摘选:

你写C++的时候,一定要想清楚,你是在做基础设施还是在应用。如果是基础设施,比如类库、框架、底层功能的class wrapper,那么可以允许你大胆地使用C++中的各种技巧,关键的要求是你得暴露出来一个clean的interface,让别人好用。这一点并不容易,特别是有的时候你觉得很好用的接口人家就觉得很别扭。所以比较省心的做法就是把接口设计成流行的风格。比如模仿STL的风格,模仿Java的风格,模仿COM的风格,甚至模仿MFC的风格,可能都比你自己发明一种新风格要“好用”。

可是做应用开发的时候,手就要把紧点,别自鸣得意地滥用高级技巧。应用开发很大程度上受基础设施的制约,总的来说,使用函数、POD对象、concrete class,从framework中派生出来的class,再加上一点点用来节省打字的template,足以满足应用开发的需要。特别是当你的下面没有很完备的class library或者framework的时候,千万不要一边写应用,一边又想着怎么让自己的这些东西“为万世开太平”,那样的话很容易就会把程序结构作的过于复杂。最后往往是应用没写好,也没有可复用性。以前我没有经验的时候,最容易犯的错误就是这个。

做基础设施的开发,那叫“设计”,是要为以后考虑的,为了长远利益可以牺牲眼前的进度、简单性。可是做应用,那眼前利益是第一位的,你先把手头的东西又快又稳地run起来,才谈得上以后有复用的可能。眼前的东西作的一塌糊涂,说里面有的模块设计得超级棒,绝对能复用,你自己都不相信。代码要一丝不苟,该写注释写注释,该写assert写assert,该怎么样怎么样,不能因为想着“反正也就是一锤子买卖”就马马虎虎。至于能不能复用,那是以后的事情。所谓Design for today, code for tomorrow,就是这个意思。
posted @ 2006-07-11 07:29 张沈鹏 阅读(297) | 评论 (1)编辑 收藏
 
Have a look , I think you will like it :)................................


http://www.ubuntu.org.cn/


There is something more interesting.

在这里列出的一些 Ubuntu 软件项目是有奖励资金的。
http://www.ubuntu.org.cn/developers/bounties

 

posted @ 2006-06-30 05:31 张沈鹏 阅读(212) | 评论 (0)编辑 收藏
 
编注:这是一篇足够搞笑的文章,特献给热爱即时战略的玩家们!
•星际、魔兽3、红警完全对比(一)
魔兽娱乐性强 比较搞笑 你常常越玩越轻松
星际竞技性强 比较严肃 你常常越玩越紧张
红警政治性强 比较偏激 你常常越玩越气愤

玩魔兽 就像唱卡拉ok 普通人练一首歌半个月 已经能赢得同伴的掌声
玩星际 就像唱京戏 曲不离口的练上一年 可能还唱不上调子
玩红警 就像说话 不用练就差不多水平 练了很多年说话的水平不见得高多少。

学习魔兽 你能打赢两家疯狂电脑的时候 你和真人打就能取胜了
学习星际 你能打赢七家电脑 你还纳闷怎么还打不过真人
学习红警 你能打赢七家电脑1000000次 不见得和真人玩过。
学习魔兽 两个小时你能死在相同的战术上八次 毫无还手之力
学习星际 两个小时你能死在迥异的战术上八次 毫无还手之力
学习红警 两年你都死在相同的得战术上无数次 毫无还手之力

魔兽里面 你专心练一个族往往就能够应付对同族异族4种情况打法
星际里面 人打虫的高手往往曾经就是虫打人的高手
红警里面 你学会一个国家就等于学会了所有国家

魔兽里面 熟练了几种套路就可以取胜
星际里面 熟练了几种套路还是被随机应变的对手牵着鼻子走
红警里面 熟练了几种套路,你会发现根本没用,只要熟练一种就可以了。

魔兽里面 你利用计谋伏击或者包围了对方主力 对方却掏出回程扬长而走
星际里面 你会发现不仅有游击战还有阵地战、伏击战、空投战……
红警里面 你会发现什么战都是多余的。人多才是硬道理。

魔兽里面 敌人无论离家多远都可以十秒内回救被你偷袭的基地
星际里面 你稍不留神就中了声东击西的诡计
红警里面 你必须时刻留神你得矿车

魔兽里面 你5分钟侦察一次还能对敌人兵种搭配了如指掌
星际里面 你5分钟侦察五次说不定得到的还是假情报
红警里面 你5分钟侦查一次,然后就再也用不着侦查了。

魔兽里面 5分钟不侦察你还能猜出来敌人部队构成
星际里面 3分钟不侦察出门就可能全是克制你的兵种
红警里面 不用你去侦查地图上就能看见敌人的情况

魔兽里面 赢了一场大战就可以松口气 因为几乎稳操胜券
星际里面 赢了一场大战 正得意一下却发现刚刚大战中被一支奇兵偷袭的经济全毁
红警里面 赢了一场大战 你会觉得很幸运 你好多天都没有打过大战了。

魔兽里面 大战对决常常形势一边倒
星际里面 大战对决常常双方两败俱伤
红警里面 大战对决常常就像已经知道了结局颁奖典礼

魔兽里面 一次全军覆没99%可以打GG
星际里面 十次全军覆说不定都不知鹿死谁手
红警里面 经常全军覆没是一种战斗方式

魔兽里面 你郁闷于虽然有顽强精神却难以在劣势中翻盘
星际里面 你郁闷于有优势却被有顽强精神的对手翻盘
红警里面 你郁闷于必须有对方不知道的战术才能翻盘

魔兽里面 录像看到一半往往能知道结局
星际里面 录像看到结局你才发现开始的判断错了
红警里面 录像是什么都不知道

魔兽里面 初始的基地被拆毁就失去了希望
星际里面 两个人鏖战到调换基地位置甚至四海为家也不稀奇
红警里面 初始基地不仅可以被拆 还可以被占 被偷 被炸 自己还可以逃跑

魔兽里面 初始矿采完基本胜负就见分晓
星际里面 全地图的资源耗尽说不定才换来一个平局
红警里面 大家一直在抢资源很少出现平局

魔兽里面 你可以龟缩防守、偏安一隅
星际里面 你如果不及时扩张 除了初始矿点 其他矿点都有对方采矿的农民
红警里面 你必须去抢矿 这也是一种必须走的形势。

魔兽里面 你把基地门口造满防御 敌人骂你猥琐赖皮
星际里面 你把基地门口造满防御 敌人不是直接空投到你家里就是直接一颗核弹敲开大门
红警里面 你必须在基地里面造满防御 敌人的飞机 飞行兵才不会占到便宜

魔兽里面 你可以用高级兵种轻松欺负低级兵种
星际里面 你发现原来小机枪也能“以小反上”地打航母
红警里面 你发现只有高级兵种才是王者

魔兽里面 没有对空部队看到空军常常就要选择逃跑
星际里面 你刚出来4个飞龙却被3队不对空的小狗强拆了基地
红警里面 飞行兵就是制胜的关键,别的都是摆设

魔兽里面 你会质疑“量变引起质变”的法则
星际里面 你会验证“量变引起质变”的法则
红警里面 你会质疑“有名气的公司比较负责”

魔兽里面 死掉一个兵会心痛半天
星际里面 你知道什么叫做前仆后继
红警里面 兵就是为了死掉的。

魔兽里面 作战部队不敢过于分散
星际里面 作战常常要地图各点全面开花
红警里面 作战就是在几个特说的地方进行
•星际、魔兽3、红警完全对比(二)
魔兽里面 即使知道敌人什么兵种配置有时候也赢不了
星际里面 知己知彼才真的百战不殆
红警里面 看到对方的兵种配置就知道对方的水平了

魔兽里面 规矩多 玩家发挥余地小 按部就班往往比突发奇想更奏效
星际里面 规矩少 玩家发挥余地大 按部就班往往陷于被动
红警里面 没规矩 玩家战术就一种 突发奇想只有在对菜鸟的时候才能用

魔兽里面 以不变应万变
星际里面 以万变应不变
红警里面 永远不变

魔兽里面 1个英雄、道具可以四两拨千斤
星际里面 1个隐形的单位可以四两拨千斤
红警里面 1个高手对菜鸟可以四两拨千斤

魔兽里面 你为那个用光环照耀部队、高人一等的英雄而感到骄傲
星际里面 你才发现引爆地雷和对方坦克同归于尽的那个小狂徒才是真正的英雄
红警里面 你为飞行兵拿下矿区而骄傲

魔兽里面 你会发现操作被人性化设计之后 如同一部傻瓜相机
星际里面 你会发现最简单的细节你也要亲手去处理
红警里面 你会发现可以自己处理的事情不是很多。可以边吃零食,边和高手对战。

魔兽里面 你会发现apm150的时候已经会无聊到插旗
星际里面 你会发现apm150的时候才能勉强用用神族
红警里面 你会发现apm150是什么你都不知道,只是到手快很有用。
魔兽里面 你觉得12个女巫按了12次O之后同时变了对方12个羊很有成就
星际里面 你发现原来12运输机的地毯式空降也仅仅是操作的基本功而已
红警里面 你认为可以让12个坦克移动中躲掉攻击,就是操作了

魔兽里面 你觉得操作2队多部队围杀、齐射、魔法、道具是多么华丽
星际里面 你才知道就连让4队雷车、2队坦克整齐行进都不容易
红警里面 你订着炮弹看,快落地的时候让自己的坦克躲,炮弹多的时候还真不容易

魔兽里面 连流星陨石都认识自己人和友军
星际里面 一个闪电放不好 可能自己被电死的比敌人的还多
红警里面 除了少数几个枪法好的兵种,其他都经常误伤自己人

魔兽里面 常常讲这是理所当然
星际里面 常常讲这也不是不可能
红警里面 常常讲这是不可能的

魔兽里面 常有某个玩家用某某流战术把所用的种族用成所在版本的王者之族
星际里面 你突然发现昨天似乎无敌的偶像今天就输在某个黑马手
红警里面 你知道自己只剩下一种战术的时候,你就是高手了。

魔兽玩久了 才知道 效率是第一
星际玩久了 才知道 数量是第一
红警玩久了 才知道 经验是第一

魔兽玩久了 才知道 等级是第一
星际玩久了 才知道 经济是第一
红警玩久了 才知道 兵力是第一

魔兽玩久了 才知道 稳定娴熟是第一
星际玩久了 才知道 侦察应变是第一
红警玩久了 才知道 对偷袭方法了解是第一

魔兽玩久了 才知道什么叫做战斗
星际玩久了 才知道什么叫做战略
红警玩久了 才知道什么叫做按部就班

魔兽玩久了 你发现地图到现在为止还停留在在陆战
星际玩久了 你发现从WCG2001开始官方地图就有岛战
红警玩久了 你发现地图是永远不变的

魔兽玩久了 你发现看rep要变换版本和收集地图实在厌烦
星际玩久了 你发现一个400k的rep记录了一场3小时的比赛
红警玩久了 你发现rep是什么你都不知道

魔兽玩久了 你会发现总有或多或少冷板凳单位
星际玩久了 你会发现没有一个单位是多余的
红警玩久了 你发现高手对战大多数单位都是多余的

魔兽玩久了 你会发现你所了解的魔兽知识越来越多
星际玩久了 你会发现你所不懂的星际知识越来越多
红警玩久了 你发现你所知道的红警知识没用的越来越多

魔兽玩久了 仿佛在考验你的耐心和熟练程度一般
星际玩久了 总有出乎你意料的东西令你眼前一亮
红警玩久了 想睡觉
•星际、魔兽3、红警完全对比(三)
魔兽玩久了 你发现刚练熟的高效打法随着版本更新、单位修改而不再应验
星际玩久了 你发现不但新战术发明的越来越快,而且被破解的也越来越快
红警玩久了 你发现战术越来越单一,破解方法越来越无用。

魔兽玩久了 你发现战术大多跟着补丁变
星际玩久了 你发现战术大多跟着玩家变
红警玩久了 你发现战术就是偷袭和反偷袭

魔兽玩久了 你发现魔兽的未来掌握在补丁手里
星际玩久了 你发现星际的未来掌握在玩家手里
红警玩久了 你发现红警的未来掌握在新游戏手里

魔兽玩久了 觉得人在被魔兽玩
星际玩久了 觉得是人在玩星际
红警玩久了 觉得人和红警都在被游戏公司玩

魔兽玩久了 天天盼望下一个版本升级补丁调整单位属性
星际完久了 天天盼望不要出现bug这样就不用再有新补丁诞生
红警玩久了 天天盼望不要出新补丁,这样bug就没了。

魔兽玩久了 忽然想起冰封王座1.07诞生到1.20几乎版版不同
星际玩久了 回忆起母巢之战1.04到1.08只做过两次单位属性变动就稳定至今
红警玩久了 算了一下10年了就出过一次补丁,还没把bug改掉

魔兽玩久了 才知道魔兽三确实比星际一画面好
星际玩久了 才知道魔兽在用孙子辈的游戏和星际一代的产品比较画面
红警玩久了 才知道同样是爷爷辈的游戏,差距怎么就那么大呢?

魔兽玩久了 才知道魔兽玩家说魔兽好却很多都没玩过甚至听说过魔兽III的爷爷和爸爸
星际玩久了 才知道星际的第一代已经快八岁了
红警玩久了 才知道红警已经六年没人玩了

魔兽玩久了 避免不了争论种族平衡性、英雄兵种单位bug性的口水战
星际完久了 你问哪个族最强 大家会告诉你三族一样厉害 根据兴趣爱好选择
红警玩久了 总是想说,咱们出飞行兵了,换种打法吧。

魔兽玩久了 你不知道为什么魔兽玩家似乎也分了种族
星际玩久了 你会发现三族来自不同星球但各族玩家却似兄弟
红警玩久了 你会觉得每个国家几乎没有区别

魔兽玩久了 你发现各族玩家往往在为维护自己所用种族而争辩
星际玩久了 你发现无论何族玩家都在为维护共同的星际而争辩
红警玩久了 你会发现这个游戏一直在维护某些国家的政治利益

魔兽玩久了 你会品味什么是流行
星际玩久了 你会体会什么是经典
红警玩久了 你会明白什么是猥琐

魔兽玩久了 你才知道为什么魔兽如此热门
星际玩久了 你才知道为什么星际如此冷门
红警玩久了 你才知道为什么红警如此热门却没有人玩

魔兽玩久了 你会喜欢上魔兽 别人说魔兽不好 你会火冒三丈 恨不得打骂他
星际玩久了 你会喜欢上星际 别人说星际不好 你会一笑而过 不屑和他争辩
红警玩久了 你会喜欢上红警 别人说红警不好 你会火冒三丈 不知道怎么争辩

魔兽玩久了 你慢慢体会到魔兽真的是一款好游戏
星际玩久了 你慢慢体会到星际越来越不像一款游戏
红警玩久了 你慢慢体会到一个好的公司比一款好的游戏重要的多

魔兽玩久了 你发现魔兽是如此精彩的游戏 给我们带来快乐
星际玩久了 你发现生活和思维方式已经有了星际的烙印
红警玩久了 你发现思维方式越来越简单了

魔兽玩久了 才发现原来有很多初中小朋友加入魔兽玩家行列
星际玩久了 才发现原来有很多成家立业的“大叔”还没退出星际玩家行列
红警玩久了 才发现原来有很多初中的小朋友和成家立业的大叔,不断加入和迅速退出这红警玩的行列 

魔兽玩久了 才知道世界上最远的距离不是中国电信和网通 而是魔兽精灵玩家和兽人玩家的心
星际玩久了 才知道 星品不好人品就不好
红警玩久了 利用bug在红警里不算人品太不好

魔兽玩久了 才知道 魔兽是暴雪制造出来的最流行的精品大作
星际玩久了 才知道 星际是上帝借暴雪之手赐予玩家们的杰作
红警玩久了 才知道 西屋为什么会输给暴雪
posted @ 2006-06-16 21:27 张沈鹏 阅读(200) | 评论 (0)编辑 收藏
 
http://spaces.msn.com/kissmyxubin/
from red to war3,
who can win me? 
hehe......
我是东方不败!
........................
posted @ 2006-06-13 00:52 张沈鹏 阅读(182) | 评论 (0)编辑 收藏
 

一道极其简单的ACM题,为什么第2段代码通不过测试?
http://acm.hziee.edu.cn/showproblem.php?pid=1096

题目
Your task is to calculate the sum of some integers.

Input
Input contains an integer N in the first line, and then N lines follow. Each line starts with a integer M, and then M integers follow in the same line.

Output
For each group of input integers you should output their sum in one line, and you must note that there is a blank line between outputs.

Sample Input
3
4 1 2 3 4
5 1 2 3 4 5
3 1 2 3

Sample Output
10
15
6

第一段代码,通过测试
# include <iostream>
using namespace std;
int main()
{
 int m,n,s;
 int sum;
 cin>>n;
 for(int i=0;i<n;i++)
 {
  if(i)
   cout<<endl;
  cin>>m;
  sum=0;
  for(int j=0;j<m;j++)
  {
   cin>>s;
   sum+=s;
  }
  cout<<sum<<endl;
 }
 return 0;
}

第2段代码,通不过测试,why?
#include <iostream>
#include <vector>
#include <numeric>
#include <string>
#include <sstream>
using namespace std;
int main(void)
{
int times;
cin>>times;
while(times--!=-1){
        string str;
        istringstream istr;
        int temp;

        getline(cin,str);
        istr.str(str);
        vector<int> array;
       
        bool ignore=true;
        while(!istr.eof()){
           istr>>temp;                          
           if(ignore==true) {ignore=false;continue;}     
           array.push_back(temp);
           }
        if(!array.empty()) cout<<accumulate(array.begin(), array.end(),0)<<"\n"<<endl;   
 }

return 0;
}

有时候第2段代码会得出奇怪的结果,这是为什么?

posted @ 2006-04-19 01:48 张沈鹏 阅读(310) | 评论 (2)编辑 收藏
 
要作题目可以到
acm.pku.edu.cn
acm.zju.edu.cn
acm.scu.edu.cn
acm.stu.edu.cn
acm.hziee.edu.cn

同济大学的Online Judge         强烈建议初学者和新手前往的地方。大概开站不久,题目难度总体较低,题量较少。而且页面和题目都是中文的。
浙江大学的Online Judge
北京大学的Online Judge        毫无疑问,中级水平偏上一些,哪一个都是值得好好待一阵的地方。但是题目和页面都是英文的,多查字典吧。
西班牙的Universidad de Valladolid           就是著名的UVA啦
http://acm.uva.es/board
http://acm.uva.es/p/v109/10940.html
俄罗斯乌拉尔大学           不得不承认,老外的题目水平的确高。还犹豫什么,有能力就出去为国争光啦。

 

Online Judge介绍

Online Judge系统是一个在线的裁判系统。她可以对程序原代码进行编译和执行,并通过预先设计的测试数据来检验程序原代码的正确性。

一个用户提交的程序在Online Judge系统下执行时将受到比较严格的限制,包括运行时间限制,内存使用限制和安全限制等。用户程序执行的结果将被Online Judge系统捕捉并保存,然后再转交给一个裁判程序。该裁判程序或者比较用户程序的输出数据和标准输出样例的差别,或者检验用户程序的输出数据是否满足一定的逻辑条件。最后系统返回给用户一个状态。

状态的介绍

    Accepted
    恭喜你,答案正确!
    Wrong Answer
    结果有误
    Presentation Error
    结果正确,但格式有错。注意空格、制表符和回车
    Compile Error
    编译错误,点击查看错误信息
    Memory Limit Exceeded
    申请的内存超过了题目的限制
    Time Limit Exceeded
    运行的时间超过了题目的限制(可能是你的算法复杂度过高)
    Output Limit Exceeded
    你的程序输出了太多的内容
    Run Time Error
    运行错,非法访问内存或者除零一类的错误。后面的方扩号内是具体的错误.
      SIGSEGV
      断错误,你可能非法访问一个空间,也可能堆栈溢出了。
      SIGFPE
      除数为零
      100
      Disk read error
      101
      Disk write error
      103
      File not open
      104
      File not open for input
      105
      File not open for output
      106
      Invalid numeric format
      200
      Division by zero
      201
      Range check error
      202
      Stack overflow error
      203
      Heap overflow error
      204
      Invalid pointer operation
      205
      Floating point overflow
      206
      Floating point underflow
      207
      Invalid floating point operation
      210
      Object not initialized
      211
      Call to abstract method
      212
      Stream registration error
      213
      Collection index out of range
      214
      Collection overflow error
      215
      Arithmetic overflow error
      216
      General protection fault
posted @ 2006-04-16 04:43 张沈鹏 阅读(210) | 评论 (0)编辑 收藏
 

程序=数据结构+算法,STL实现了算法与数据结构的分离(解耦合,decouple).


   一 iterator

stl中算法通过iterator作用于数据的线性区间(linear range).

iterator是类似于指针的东东.它有几种不同的类型(不是C++语言中的类型,是一种concept(约定)),分别提供各种层次的功能,以满足不同算法的需要.
比如:

input iterator
支持:
 == * ++
不支持:
 = -- > <
 mutlipass(多次历遍)
 同时拥有两个input iterator(不知道术语是什么,望大侠赐教)

等等,可以参见<泛形编程与STL>.

iterator_traits是用来定义iterator的指向物的数据类型的(听说0x标准会增加typeof,有了typeof是不是可以简化一下???who can tell me?).

iterator_traits中还有一项iterator_category,是一个空类的typedef,用来标识iterator的类型(如input iterator).
可以配合函数的重载,针对不同类型的iterator,写其最有效率的算法.

 

   二 函数对象(function object)

"羊吃草"可以理解"将羊这个函数对象 通过吃这种算法 作用于草这个区间".
function object相当于羊,通过替换function object为牛,马,我们可以实现不同的目的(比如羊吃草是为了产毛,牛吃草是为了耕地,马吃草为了赶路).

function object中有一类叫做adaptable function object,它们作用类似iterator_traits,不过没有单独写成一个object.他们通过了自身参数和返回值的typedef.
可以用于function object adapter中,比如一个作用类似于"!"(not)的function object adapter.
stl中通过adaptable function object的基类,以方便使用.

刚看到这里,下次继续...................

posted @ 2006-04-14 16:46 张沈鹏 阅读(373) | 评论 (0)编辑 收藏
仅列出标题
共7页: 1 2 3 4 5 6 7