在黑暗中举起探索的火炬的网志
在喧闹、混杂的生活中
你应该与你的心灵和平相处
尽管这世上有很多假冒和欺骗
有很多单调乏味的工作
和众多破灭的梦幻
它仍然是一个美好的世界
记住:你应该努力去追求幸福。
是的,记住:你应该努力去追求幸福。
每个早晨灿烂的太阳升起的时候,
每个人都应
-
2004-03-30
[转载] 人生启示录:被称为世上最经典的24句话 - [工作-生活]
1.记住该记住的,忘记该忘记的。改变能改变的,接受不能改变的。
2.能冲刷一切的除了眼泪,就是时间,以时间来推移感情,时间越长,冲突越淡,仿佛不断稀释的茶。
3.怨言是上天得至人类最大的供物,也是人类祷告中最真诚的部分。
4.智慧的代价是矛盾。这是人生对人生观开的玩笑。
5.世上的姑娘总以为自己是骄傲的公主(除了少数极丑和少数极聪明的姑娘例外)。
6.如果敌人让你生气,那说明你还没有胜他的把握。
7.如果朋友让你生气,那说明你仍然在意他的友情。
8.令狐冲说“有些事情本身我们无法控制,只好控制自己。”
9.我不知道我现在做的哪些是对的,那些是错的,而当我终于老死的时候我才知道这些。所以我现在所能做的就是尽力做好待着老死。
10.也许有些人很可恶,有些人很卑鄙。而当我设身为他想象的时候,我才知道:他比我还可怜。所以请原谅所有你见过的人,好人或者坏人。
11.快乐要有悲伤作陪,雨过应该就有天晴。如果雨后还是雨,如果忧伤之后还是忧伤.请让我们从容面对这离别之后的离别。微笑地去寻找一个不可能出现的你!
12.死亡教会人一切,如同考试之后公布的结果——虽然恍然大悟,但为时晚矣~!
13.你出生的时候,你哭着,周围的人笑着;你逝去的时候,你笑着,而周围的人在哭!一切都是轮回!!!! 我们都在轮回中!!!!
14.男人在结婚前觉得适合自己的女人很少,结婚后觉得适合自己的女人很多。
15.于千万人之中,遇见你所遇见的人;于千万年之中,时间的无涯荒野里,没有早一步,也没有晚一步,刚巧赶上了 。
16.每个人都有潜在的能量,只是很容易:被习惯所掩盖,被时间所迷离,被惰性所消磨。
17.人生短短几十年,不要给自己留下了什么遗憾,想笑就笑,想哭就哭,该爱的时候就去爱,无谓压抑自己。
18.和平年代》里的话:当幻想和现实面对时,总是很痛苦的。要么你被痛苦击倒,要么你把痛苦踩在脚下。
19.真正的爱情是不讲究热闹不讲究排场不讲究繁华更不讲究嚎头的。
20.生命中,不断地有人离开或进入。于是,看见的,看不见的;记住的,遗忘了。生命中,不断地有得到和失落。于是,看不见的,看见了;遗忘的,记住了。然而,看不见的,是不是就等于不存在?记住的,是不是永远不会消失?
21.我们确实活得艰难,一要承受种种外部的压力,更要面对自己内心的困惑。在苦苦挣扎中,如果有人向你投以理解的目光,你会感到一种生命的暖意,或许仅有短暂的一瞥,就足以使我感奋不已。
22.我不去想是否能够成功,既然选择了远方,便只顾风雨兼程;我不去想,身后会不会袭来寒风冷雨,既然目标是地平线,留给世界的只能是背影。
23.后悔是一种耗费精神的情绪.后悔是比损失更大的损失,比错误更大的错误.所以不要后悔 。
24.日出东海落西山,愁也一天,喜也一天;遇事不钻牛角尖,人也舒坦,心也舒坦。
本文转自:http://expert.csdn.net/Expert/topic/2902/2902477.xml?temp=.4245874 -
2004-03-26
[转载] 人.历史.革命.知识分子.文艺 作者:黄纪苏 - [网络杂文]
人是什么?
人是过程,一个可人可畜、并无定论的过程。恩格斯说过,以往悠悠岁月不过是一部人类的史前史。今天街上流行的牛头马面尔诈我虞还远远不能终结‘人性’。几十万年放眼望去,从茹毛饮血到如今见白鳍豚孤单一点都哭,这其间由畜向人的进步的确不小,但由人而畜甚至禽兽不如也不是罕见的社会过程。所谓‘人’,其实不过人畜二道的战场,胜负还没有决出。这种开放的人性观,对于既成事实的丛林世界肯定不利,因此也就不为豺狼虎豹甚至广大肉食动物所喜闻乐见。假设各行各业的万千泰森忽然听到广播:铁嘴钢牙南拳北腿之属下班前统统入库,明天太阳一升起来就再不搞弱肉强食了。我猜这些人极可能由高考状元的父母带头到新华门静坐,要求设立‘神农架特区’;那性急的四蹄生风一条血路攻入动物园,到猛兽馆继续‘正局’‘副部’的活法也说不定。
畜道挟亿万年的巨大惯性,统治人类千万年之久。虽然一度烽烟告急,但近来丝竹弦管一派中兴景象,于是在圆颅方趾之间大肆安插狼心狗肺。畜道真是位了不起的教育家,不但因势利导把发情期的少年组成‘下半身’诗社,还能让也算经历过些事情的人深信‘人性’恶得合情合理合法,正派人不是白沟的货色就是安定医院溜出来的。他的徒弟如今已修炼到远远闻见人声便倾巢而出、吠声大作的地步。与此同时,以仁爱为旨归的宗教、以大同为目的的伦理、以社会平等为核心的意识形态,虽屡败屡挫却从来不屈不挠。在它们的导引下,现代理想主义者为改良人的客观世界和主观世界还进行过勇敢的制度尝试,例如为发展全面的人的教育事业、为增强全民体质的体育事业、为养老抚幼济困扶穷的福利事业。人道虽然还不能像晨光一样在大地上展开,但也不会久甘星火之微。
历史是什么?
历史是创造。将人的历史比附自然的演化,作为一种手段本来无可厚非,不但旧世界的主人向‘物竞天择’、‘利益最大化’寻找合法性,起义的奴隶也要用‘替天行道’、‘世界潮流’为自己壮胆。但作为一种认识,它却大错特错。历史从来就以强者的利益为根据,以强者的意志为转移,抢得天下便抢得了历史。规律不过是勒石铭碑的事实、喷了发胶的发型。社会主义终将胜利、资本主义长宜子孙这样的‘历史规律’能否成立,其实全看我们有什么样的意志,能造成什么样的现实。在昔日的‘革命者’纷纷抛出共产股买进资本股的今天,在新罗马帝国的联防队员向一切不中听的思想言论贴‘发烧’、‘非理性’封条的今天,在各种邪恶举着‘人性’的通行证、鸣着‘规律’的警笛横行无忌的今天,痛定思痛的平等正义事业应该清醒地认识到,自己并不拥有恶创造的历史,不享受恶建立的规律。旧世界只有一种‘法则’或许属于它,那就是,哪里有压迫哪里有反抗! 这是一种血性,一种渴望创造、寻觅新机的原始动力。有了它,人便敢于否定昨天肯定明天,就不惜今生今世在冰雪中播种,在虎狼世界直立行走。要创造一个人道的世界,就得披荆斩棘,就得挑战恶的
即成事实,就得承受恶的经济规律、社会规律、学术规律、艺术规律的围攻哄笑。只有透过创造的历史观,新世界才分明可见。知不可为而为才能有所为;不顾一切才能得到一些;创造,才会有属于自己的历史;有了自己的历史,‘规律’也就在其中了。
革命是什么?
革命是路,通往人道的路,它不止一条,而是千万条。从坦直的高速路到尚未踩成的土径,从暴烈的政权更迭到徐缓的制度改造,从喧嚣的财富再分配到静默的风俗变迁,革命像佛现无数身,像月印无数河。它绝不仅仅是政治,虽然以往的矛盾往往集中于政治;它也绝不仅仅是暴力,虽然现实的的冲突往往升级为暴力。
在这个时代,革命成了思想禁忌,不仅见风使舵的学者文人鬼哭狼嚎地为它送葬,就连阅历上的宝宝都学会了对它长吁短叹。这既是由于概念上的混乱——‘革命’一词就像公共楼道,早被家家户户的东西塞满;也是由于任意的诬陷——革命成了慈善家,大凡杀人放火走极端的事情,都归他买单;更是由于革命的曲折艰难——古往今来有哪件事像它一样寄托了这么多的人类希望,担当了这么深的人类苦难?但革命不会因诅咒漫骂、忏悔反省,也不会因脂粉的流行、彩灯的脱销而偃旗息鼓。革命与畜道相反相成,同生共死。只要剥削压迫还在世,革命就是它脚下的影子、枕上的噩梦、一辈子也别想摆脱的索命无偿。与其扬汤止沸,不如釜底抽薪。与其跟着伯克之流哀叹革命中法国的恐怖,不如与罗伯斯庇尔们一起看到革命前巴黎的腐朽。与其历数流民的种种不是,定他们为中国历史的祸源,不如考察一下这些人为什么流离失所铤而走险。
从反抗压迫到消灭压迫,从杀富济贫到仁爱大同,从这个世界到这个世界,从人类自身到人类自身,革命是质的飞跃,量的渐变。它隐隐也不见其始,茫茫也不知其终。所以,革命是不朽的。
知识分子是什么?
知识分子是人道工作者。他一度夹着尾巴做过社会贱民,这当然极不公,已成为历史的教训。但像现在一些位那样在阔人家的穿衣镜前流连忘返,横瞧像‘山中宰相’,侧看是新潮‘知本家’,好象也不大对头。知识分子应为人道工作。这项工作的 -
2004-03-25
[转载] 漫谈程序员与编程(下) 作者:侯捷 - [工作-生活]
接上篇:[转载] 漫谈程序员与编程(上) 作者:侯捷
良性循环
一个体系的建制,需要从底层到顶层的坚实构筑。不论是 C++, Java, .Net, OO, UML, Windows programming, Linux programming,每一个主题欲成就一个完整体系,都需要一大套书。拿C++/OOP 来说,就得涵盖语法语意的、物件模型的、专家经验的、设计样式(design patterns)的、入门的、进阶的,作为叁考工具的┅。拿 GP/STL 来说,就得有 GP 泛论型的、STL 源码剖析的、STL 应用大全的、STL 规格大全的、STL 组件设计的、其他泛型技术的┅。拿Java 来说,就得有语言核心的、物件导向的、多绪编程的、图形介面的、网路应用的┅。对生手而言,不先把底层的东西弄清楚就学习高层的抽象,必会成为空中楼阁,流于形式。对熟手而言,缺乏抽象思维,意味层次上的停滞。
写作、翻译、乃至於出版全体系好书,真的是一件需要目光长远、意志坚定、带点理想色彩的人,才做得起来的志业。
如果这样的人,这样的出版社,没有得到大家理念上和实质上的支持,谁会投入这种傻事? 我个人一向是高品质高价位的坚定信奉者。高品质高价位是生产者经营的最大诱因。因为努力做出了高品质,所以得享高价位带来的高利润,天经地义。否则谁要费心去做高品质?慈善家吗?傻瓜吗?
对於消费者,高价位当然令他不舒服。但是你应当思考是否物有所值,甚至物超所值。拿英文书为例,USD 49.95 一本的 The C++ Standard Library,或是 USD 49.95 一本的 Generic Programming and the STL,完全物超所值。当我了解这些书的价值,就算他们再贵两倍,我也要买。有人拼死吃河豚,我可是要拼命买好书。现实地说,眼下「知识经济」喊得震天响,好书带来的知识不正是赚钱工具吗?对赚钱工具小气,是不是和自己过不去? 下面是一封读者来信:
相较日本无论是漫画作家、文学作家或是偶像歌星、影星的客观条件来比较, 在台湾,身为专业作家竟如此难为?有人可以连夜搭帐篷排队买票看演唱会,有人却可以论斤计两地讨论页数与书价高低。或许他们不知道,一本介绍C程式语言的入门书,在德国索价100 DM (约NT$2000)。 因此我的德国同事们购书前必定徵询意见或叁考书评。书价虽不低,但其读书风气仍不亚於日本。
这里点出了一个重点:书价很高,於是大家慎选好书,重视书评。下面是另一封读者来信:
我是一名大陆的读者,同时也是一名计算机的初学者。我在网上看到网友都十分推崇您的着作及译作。知道您的作品《深入浅出MFC》第二版即将在内陆出版,我决定买这本书,并与华中科技大学出版社取了联系。从那里知道您今年还会在大陆出几本书,我非常高兴,但在知道了您对价格的看法後,又有些失望。
大陆与台湾的经济水平是不同的,作为普通的工薪阶层,购买力也是有限的。我们这里,各类图书中计算机类图书的价格是最高的,图书页码的最高位与书价的最高位基本相同 -- 700页的书,价格在70到80元之间,1000页以上的,价格在100元以上。这是目前大陆书价的大体情况。如果按您所说,350页,书价80元,在这里算是很高的价格了,这种价格的书,只能看,不能买。
"春蚕到死丝方尽,蜡炬成灰泪始干",教师工作被我们看成很神圣的职业,燃烧自己,照亮别人。我想您出书的目的,也是想让更多渴望知识的人受益于它,少走弯路。作为读者,我们也希望能够看到更多更好的书。但是在一定历史时期内,购买力与价格应当有一个平衡,350页80元的价格确实太高了,如果能够降到60元以内,我相信大多数读者可以接受。
您的书的品质很高这是大家的共识,从价格上应当与其它书区别开来,但书价也不宜太高。名牌服装走高价位的路线,当然可以提高它的身价,显得它档次很高,但是太高的价格使它脱离了主要的消费群体,大多数人只能在口头上谈论它,却只有极少数的人会把它穿在身上。书籍与名牌服装不同,只有经过很多读者长时间的阅读之後,才能够证明它的价值,如果很多人都知道侯先生的书质量很好,但是却很少有人读过(因为价格问题),那岂不是一种悲哀。 我最不乐意看到「xxx 页的书,售价 xxx 元」这种观念。一本书的价值在内容,不在页数。真要这麽算,每本书我们都应该检视一下其字型大小、行距字距、硬拷图多寡、留白多寡 -- 因为这些都关系着页数。如果大家都接受页数和书价的固定比例,肯定会有大量浮滥的书跑出来(不就是现在的情况)。
不必这麽累。一本书值它的价,就买;不值它的价,就别买。很简单的逻辑。
我们难道能够拿着尺衡量一件亚曼尼用了多少码布,来决定它的价格吗?或是拿着尺衡量一张梵谷是几号,来决定它的价格?我能够说因为我画的绣球花比梵谷的鸢尾花大两倍,所以我应该卖他的两倍价?
买东西不能光看有形;那无形的往往更重要。买书不是买纸。正确价值观必须建立起来。
当然很有可能你认为买名牌服装或名画的人都是疯子。你要的只是布和框。那表示那些物品在你心中不值那个价。很好,你有你的评价,你有你的选择。
我不打算在「引喻」(例如名牌服装或名画)上 -
2004-03-25
[转载] 漫谈程序员与编程(上) 作者:侯捷 - [工作-生活]
「侯捷观点」进行了4期。通过这个专栏的作用,我开始接触大陆的电脑技术刊物《程序员》和电脑技术网站 CSDN,并累积了相当量的观察和感想。这个专栏前数期谈的都是技术,不是深度书评就是高阶技法。这一期让我们轻松一下,谈谈程序员(programmer)与编程(programming)。其中不少议题起因於读者来信的触发,许多观点我也已经回应於侯捷网站上。所以若干文字可能你曾经在侯捷网站上阅读过。有些看法也许读来刺眼,听来刺耳。但如果大家不把我视为外人,当能平心静气地思考。台湾存在许多相同的问题,我也时常为文针砭。
有一句话这麽说:如果你想使人发怒,就说谎。如果你想使人大怒,就说实话。说实话的人来了,但愿你心平气和。
急功近利是大忌
一位读者写信给我,说他非常着急。他一个月挣300元人民币,家里情况又不好。他希望赶快把 VC/MFC 学会,进入 IT 产业挣钱。信写得很长,看着看着,我也不禁为他着急起来。
有许多读者,虽然情况没有那麽急迫,燃眉之情却也溢於言表。不外乎都是希望能够尽快把某技术某技术学习起来。
但是哪一样东西哪一样技术是可以快速学成的呢?能够快速学成的技术,人才也就必然易取易得,根据市场供需法则,也就不可能有很好的报酬。所以诸君当有心理准备,门槛高的,学习代价高,报酬高;门槛低的,学习代价低,报酬低。
说起来是老生常谈了。这其中最可怕的心理在急功近利。从读者的来信,以及从 CSDN 上的众多帖文,我感觉,许许多多人学习 IT 技术,进入 IT 产业,是认为 IT 产业可以助你脱困,远离贫穷。
是的,IT 产业有这个「钱」景,但你得有那份实力。要吃硬核桃,也得先估量自己的牙口。
「好利」是基本人性,Acer 总裁施振荣先生大力提倡「好逸恶劳」之说,视为人性之本,进步的原动力。谁能说不是呢?好利可以,近利就不妙了。近利代表目光浅短,一切作为都因此只在小格局中打转。
梨园有句话:要在人前显贵,就要在人後受罪。台上一分钟,台下十年功。老祖宗这方面的教诲太多了,身为中国人的我们,应该都耳熟能详。
对於心急的朋友,我只有一句话:勿在浮沙筑高台。你明明很清楚这个道理,为什麽临到自己身上,就糊涂了?急是没有用的,浮躁更会坏事。耐住性子扎根基吧。做任何事都要投资,扎根基就是你对自己的未来的投资。如果想知道如何按部就班扎根基,侯捷网站上有一篇文章:「97/06 选义按部 考辞就班」,请你看看。
口舌之战有何益
最常在程序技术相关论坛上看到毫无价值而又总是人声鼎沸的口舌之战,就是诸如「VB 和 Delphi 谁好」、「BCB 和 VC 谁优」、「Linus 和 Windows 谁棒」、「Java 和 C++ 谁强」这种题目。每次出场都一片洋洋洒洒,红红火火急速窜升为超酷话题。众人各拥所好,口沫飞扬,但是从来说服不了任何异阵营的人,话都只说给自己人听,给自己人爽。
这样的论战有何意义?许多人在重组自己的偏见时,还以为自己在思考呢。战到最後,就只是争谁说最後一句话而已。而且,擦伤引起的争吵几乎总是以刺伤结束。
工具与技术的评比,是一场高水准的演出。真有能力做评比,侯捷是很尊敬的。但是这些各拥所好,口沫飞扬的人,真的对评比两造都有深刻的了解吗?很多时候我们看到的只是无知,而无知是这麽一种东西:当你拥有了它,你就拥有巨大的胆量。
很多人喜欢某种工具,只不过因为那是他的初体验。他玩它玩出了一点心得,可以说出它的某些好,就开始做「评比」了。你只看到牡丹的艳丽,又怎知寒梅的清香,幽兰的空灵?
绝大多数人使用某种工具,不是因为它最好,不是因为众里寻它千百度,仅仅只是因缘际会。虽然说不同的应用环境选择不同的工具,是最伶俐的作为,但我真的怀疑,在现今工具(以及工具背後反映的技术)如此繁复的时空下,有多少人能够同时精通一个以上的同质工具?追二兔不得一兔,我还是认为你精专一样工具,把它发挥到最高效能,获得的利益多些。被大家拿来评比的,都是市场上的佼佼者,还能差到哪里去?能够两雄相争,必然是在技术面、非技术面(资源的普及、品牌的可靠度)各有一片天,你的评比意义大吗?全面吗?
大多数人没有能力同时精通两种同质工具,初学者听了网路上不知名大侠的高论,也不可能有所选择(如果有,怕也只是蒙着头瞎选)。这种没有提供数据,评论者也没有显示任何信誉(credit)的论战,没有任何意义,纯粹只为自己爽。浪费网路资源!
C++ 之父 Bjarne Stroustrup 曾经在他自己的网页上的 FAQ (以及其他许多场合)中回答如下问题。虽然其中谈的是语言,但是扩大到其他层面仍然合适,值得大家好好咀嚼(注:全文由孟岩先生译出,可自侯捷网站浏览):
Q: 你愿不愿意将C++与别的语言比较?
A: 抱歉,我不愿意。你可以在The Design and Evolution of C++的介绍性文字里找到原因。有不少人邀请我把C++与其它语言相比,我已经决定不做这类事情。在此我想重申一个很久以来我一直强调的观点:语言之间的比较没什麽意义,更不公平。主流语 -
2004-03-25
[转载] 使用VC6.0实现窗口的任意分割 作者:张中庆 - [VC开发专辑]
使用VC6.0实现窗口的任意分割
南京邮政局计算机中心 张中庆
一、关于CSplitterWnd类
我们在使用CuteFtp或者NetAnt等工具的时候,一般都会被其复杂的界面所吸引,在这些界面中窗口被分割为若干的区域,真正做到了窗口的任意分割。 那么我们自己如何创建类似的界面,也实现窗口的任意的分割呢 ?在VC6.0中这就需要使用到CSplitterWnd类。CSplitterWnd看上去像是一种特殊的框架窗口,每个窗口都被相同的或者不同的视图所填充。当窗口被切分后用户可以使用鼠标移动切分条来调整窗口的相对尺寸。虽然VC6.0支持从AppWizard中创建分割窗口,但是自动加入的分割条总是不能让我们满意,因此我们还是通过手工增加代码来熟悉这个类。
CSplitterWnd的构造函数主要包括下面三个。
BOOL Create(CWnd* pParentWnd,int nMaxRows,int nMaxCols,SIZE sizeMin,CCreateContext* pContext,DWORD dwStyle,UINT nID);
功能描述:该函数用来创建动态切分窗口。 参数含义:pParentWnd 切分窗口的父框架窗口。 nMaxRows,nMaxCols是创建的最大的列数和行数。 sizeMin是窗格的现实大小。 pContext 大多数情况下传给父窗口。 nID是字窗口的ID号. BOOL CreateStatic(CWnd* pParentWnd,int nRows,int nCols,DWORD dwStyle,UINT nID)
功能描述:用来创建切分窗口。 参数含义同上。 BOOL CreateView (int row,int col,CruntimeClass* pViewClass,SIZE sizeinit,CcreateContext* pContext);
功能描述:为静态切分的窗口的网格填充视图。在将视图于切分窗口联系在一起的时候必 须先将切分窗口创建好。
参数含义:同上。
从CSplitterWnd源程序可以看出不管是使用动态创建Create还是使用静态创建CreateStatic,在函数中都调用了一个保护函数CreateCommon,从下面的CreateCommon函数中的关键代码可以看出创建CSplitterWnd的实质是创建了一系列的MDI子窗口。
DWORD dwCreateStyle = dwStyle & ~(WS_HSCROLL|WS_VSCROLL);
if (afxData.bWin4)
dwCreateStyle &= ~WS_BORDER; //create with the same wnd-class as MDI-Frame (no erase bkgnd)
if (!CreateEx(0, _afxWndMDIFrame, NULL, dwCreateStyle,
0, 0, 0, 0,pParentWnd->m_hWnd, (HMENU)nID, NULL))
return FALSE; // create invisible
二、创建嵌套分割窗口
2.1创建动态分割窗口
动态分割窗口使用Create方法。下面的代码将创建2x2的窗格。
m_wndSplitter.Create(this,2,2,CSize(100,100),pContext);
但是动态创建的分割窗口的窗格数目不能超过2x2,而且对于所有的窗格,都必须共享同一个视图,所受的限制也比较多,因此我们不将动态创建作为重点。我们的主要精力放在静态分割窗口的创建上。
2.2创建静态分割窗口
与动态创建相比,静态创建的代码要简单许多,而且可以最多创建16x16的窗格。不同的窗格我们可以使用CreateView填充不同的视图。
在这里我们将创建CuteFtp的窗口分割。CuteFtp的分割情况如下:
-----------------------
| CCuteFTPView |
-----------------------
|CView2 |CView3 |
-----------------------
| CView4 |
-----------------------
创建步骤:
▲ 在创建之前我们必须先用AppWizard生成单文档CuteFTP,生成的视类为 CCuteFTPView.同时在增加三个视类或者从视类继承而来的派生类CView2,CView3 CView4.
▲ 增加成员:
在Cmainfrm.h中我们将增加下面的代码:
CSplitterWnd wndSplitter1;
CSplitterWnd wndSplitter2;
▲ 重载CMainFrame::OnCreateClient()函数: BOOL CMainFrame::OnCreateClient( LPCREATESTRUCT /*lpcs*/, CCreateContext* pContext)
{ //创建一个静态分栏窗口,分为三行一列
if(m_wndSplitter1.CreateStatic(this,3,1)==NULL)
return FALSE;
//将CCuteFTPView连接到0行0列窗格上
m_wndSplitter1.CreateView(0,0,RUNTIME_CLASS(CCuteFTPView),CSize(100,100), pContext);
m_wndSplitter1.CreateView(2,0,RUNTIME_CLASS(CView4),CSize(100,100),pContext);
//将CView4连接到0行2列
if(m_wndSplitter2.CreateStatic(&m_wndSplitter,1,2,WS_CHILD|WS_VISIBLE,
m_wndSplitter.IdFromRowCol(1, 0))==NULL)
return FALSE; //将第1行0列再分开1行2列
//将CView2类连接到第二个分栏对象的0行0列
m_wndSplitter2.CreateView(0,0,RUNTIME_CLASS(CView2),CSize(400,300),pContext);
//将CView3类连接到第二个分栏对象的0行1列
m_wndSplitter2.CreateView(0,1,RUNTIME_CLASS(CView3),CSize(400,300),pContext);
return TRUE;
}
2.3实现各个分割区域的通信
■有文档相连的视图之间的通信
由AppWizard生成的CCuteFTPView是与文档相连的,同时我们也让CView2与文档相连,因此我们需要修改CCuteFTPApp的InitInstance()函数,我们将增加下面的部分。
AddDocTemplate (new -
2004-03-23
[转载] 声明函数指针并实现回调 作者:赵湘宁 - [C/C++开发专辑]
程序员常常需要实现回调。本文将讨论函数指针的基本原则并说明如何使用函数指针实现回调。注意这里针对的是普通的函数,不包括完全依赖于不同语法和语义规则的类成员函数(类成员指针将在另文中讨论)。
声明函数指针
回调函数是一个程序员不能显式调用的函数;通过将回调函数的地址传给调用者从而实现调用。要实现回调,必须首先定义函数指针。尽管定义的语法有点不可思议,但如果你熟悉函数声明的一般方法,便会发现函数指针的声明与函数声明非常类似。请看下面的例子:
void f();// 函数原型
上面的语句声明了一个函数,没有输入参数并返回void。那么函数指针的声明方法如下:
void (*) ();
让我们来分析一下,左边圆括弧中的星号是函数指针声明的关键。另外两个元素是函数的返回类型(void)和由边圆括弧中的入口参数(本例中参数是空)。注意本例中还没有创建指针变量-只是声明了变量类型。目前可以用这个变量类型来创建类型定义名及用sizeof表达式获得函数指针的大小:
// 获得函数指针的大小
unsigned psize = sizeof (void (*) ());
// 为函数指针声明类型定义
typedef void (*pfv) ();
pfv是一个函数指针,它指向的函数没有输入参数,返回类行为void。使用这个类型定义名可以隐藏复杂的函数指针语法。
指针变量应该有一个变量名:
void (*p) (); //p是指向某函数的指针
p是指向某函数的指针,该函数无输入参数,返回值的类型为void。左边圆括弧里星号后的就是指针变量名。有了指针变量便可以赋值,值的内容是署名匹配的函数名和返回类型。例如:
void func()
{
/* do something */
}
p = func;
p的赋值可以不同,但一定要是函数的地址,并且署名和返回类型相同。
传递回调函数的地址给调用者
现在可以将p传递给另一个函数(调用者)- caller(),它将调用p指向的函数,而此函数名是未知的:
void caller(void(*ptr)())
{
ptr(); /* 调用ptr指向的函数 */
}
void func();
int main()
{
p = func;
caller(p); /* 传递函数地址到调用者 */
}
如果赋了不同的值给p(不同函数地址),那么调用者将调用不同地址的函数。赋值可以发生在运行时,这样使你能实现动态绑定。
调用规范
到目前为止,我们只讨论了函数指针及回调而没有去注意ANSI C/C++的编译器规范。许多编译器有几种调用规范。如在Visual C++中,可以在函数类型前加_cdecl,_stdcall或者_pascal来表示其调用规范(默认为_cdecl)。C++ Builder也支持_fastcall调用规范。调用规范影响编译器产生的给定函数名,参数传递的顺序(从右到左或从左到右),堆栈清理责任(调用者或者被调用者)以及参数传递机制(堆栈,CPU寄存器等)。
将调用规范看成是函数类型的一部分是很重要的;不能用不兼容的调用规范将地址赋值给函数指针。例如:
// 被调用函数是以int为参数,以int为返回值
__stdcall int callee(int);
// 调用函数以函数指针为参数
void caller( __cdecl int(*ptr)(int));
// 在p中企图存储被调用函数地址的非法操作
__cdecl int(*p)(int) = callee; // 出错
指针p和callee()的类型不兼容,因为它们有不同的调用规范。因此不能将被调用者的地址赋值给指针p,尽管两者有相同的返回值和参数列。
本文出处:http://www.vckbase.com/document/viewdoc/?id=195 -
2004-03-23
[转载] 关于台独分子的笑话 - [C/C++开发专辑]
1、李登辉、连战、陈水扁同坐直升机巡视。 李登辉说:“如果我丢一千块下去,捡到那
一个人一定很高兴。“连战说:“如果我丢两张五百元下去,那就有两个人很高兴了。陈
水扁说:“如果我丢十张一百元下去,就有十个人很高兴了。” 这个时候 ........?驾驶
员喃喃自语地说:“何不把自己都丢下去,让两千一百万人都高兴呢?
2、总统阿扁希望提高自己的声望,想要发行一款有自己肖像的邮票..... 发行过了一个多
月之后,阿扁想要问看看视察看看销路如何..... 阿扁:“销售情形怎么样?” 邮政总局
局长:“还算不错,只不过常常有人抱怨黏不牢!” 阿扁:“怎么会呢?” 阿扁随手拿
了一张邮票,涂了一点口水在邮票背面,便试贴在信封上.... 阿扁:“这样不是黏得很紧
吗?” 邮政总局局长:“可是......大家....都把口水吐在正面啊......”
3、深夜,阿扁总统要去帮阿珍买夜宵。 结果在路上遇到抢匪… 抢匪拿着枪指着阿扁说:
“把身上的钱交出来!” 阿扁勃然大怒说:“你这什么态度?我可是堂堂总统耶!” 抢
匪:“喔,那……把我的钱还来。”
4、某天,总统、五院院长...等大官一起参加一个会议,结果发生连环车祸,送至医院急
救,记者们闻风赶至医院 .... 稍久,医生出来了,记者忙着问:“医生!医生!总统有
救吗?” 医生沮丧的摇摇头说:“唉..总统没救了...” 记者又问:“医生!医生!行政
院长有救吗?” 医生又沮丧的摇摇头说:“唉...也没救了...” 记者就问:“那...到底
谁有救?” 医生精神一振说:“台湾有救了!”
5、有一天陈水扁总统前往某家精神病院视察, 所有的病患都站在走廊上高 声欢呼, 陈
水扁万岁!陈水扁万岁!只有一名病患面无表情,对总统不理不睬。 陈水扁看到了, 于
是问院长说:“那位病人为什么不对我欢呼呢?” 院长:“因为他今天精神非常正常。“
6、一辆竞选车载着陈水扁竞选团队开到乡村去造势,不幸在山间小路上翻车,正在农田里
干活的老农民看见这情景,就赶到出事地点,可是车上的人都死光了,于是他挖了一个土
坑,把几个政客都埋了。过了几天,负责事故勘察的警察找到那个老农民,问他那几个政
客到哪里去了,老农民说己经埋了,警察赶紧追问:“他们都死了吗?” 老农回答说:“
嗯~我看到陈水扁在我埋他的时候大叫说他还没死。” 警察说:“那你怎么也把他埋了?
“老农说:“你知道的嘛~这个陈水扁从不说实话的...
本文出处:http://www.sonicbbs.com/topicdisplay.asp?BoardID=21&Page=1&TopicID=511688 -
2004-03-23
[转载] 中国男足为什么总是输? - [网络杂文]
中国男足为什么总是输?其实翻翻报纸杂志就知道有太多原因了,综合为大家摘要如下,希望大家理解中国男足:
(1)草皮不适应
1、草皮太硬了 2、草皮太软了 3、不适应阔叶草及其它一些草
(2)天气原因
1、下雪 2、下雨 3、下冰雹 4、阳光太好了 5、冷 6、热 7、不冷不热(不能给对手造成麻烦)
(3)赛场因素
1、场内因素:A、裁判帮他们 B、裁判不帮我们 C、对手身体太强壮 D、对手技术太细腻 E、门柱帮了他们 F、对方守门员发挥BT+超常 G、补时太短 H、补时太长
2、场外因素:A、客场作战,气氛影响 B、主场作战,干扰太大 C、观众不为我们喝彩 D、有人往场内扔手雷
(4)抽签抽得不好
1、同组都是强队踢输了,我拷死亡之组,按惯例当然应该中国队输。
2、同组都是中等水平队踢输了,主要是想赢怕输的思想包袱太重了,队员们没能放得开手脚。
3、同组都是弱队踢输了,对对手不够重视,麻痹大意,一时疏忽。
(5)
1、对亚洲强队踢输了,恐X心理在作怪,走不出阴影。
2、对亚洲弱队踢输了,对手进步太大了,太大了,我们对他们没有秘密可言了都。
3、对欧洲弱队踢输了,中国队输给了欧洲队。
4、对欧洲强队(比如意大利队)0:1踢输了,告诉大家一个好消息:中国队仅以0:1输给了强大的意大利队!!
5、对欧洲强队(比如意大利队)0:10踢输了,中国队踢出了自已的一惯水平,队员们也努力了,结果也不出全国人民所料。
6、对欧洲强队(比如意大利队)0:100踢输了,精彩的比赛!意大利某球星进了20个,某球星进了25个!看来中国队跟意大利队的水平差距确实是有一点的。
(6)
“海龟派”没回来踢输了,我们雪藏主力。
“海龟派”回来踢输了,时差没倒过来。
(7)
1、主教练技术差!
2、中国球迷素质差!
3、中国足协这个名字差!
4、中国队——队医技术差!
5、中国足协领导人——办公室里那位倒水扫地的大妈差!
(8)草皮不软不硬,天气不冷不凉,裁判和门柱净帮着我们,对方没有守门员,补时时间长短我们说了算,到第三国去比赛,观众全都为我们猛喝彩,观众全都不往场内扔手雷,抽了一个人人都说好的签,“海龟派”回来后猛睡了一个月倒回时差参加比赛,换了个主教练,换了批外国球迷,换了个中国足协——的牌子,换了中国队——的队医,换了个中国足协领导人——办公室里的打杂大妈,踢输了——
原因是:今天我们队,真TM不在状态!!
本文出处:http://jczsbbs1.sina.com.cn/cgi-bin/view.cgi?gid=5&fid=32&thread=192573&date=20040322 -
2004-03-17
[原创] 在Qt 中如何记录上次程序退出时的位置与大小. - [Qt开发专辑]
要保存位置,只要在组件退出时记录下组件的几何属性,在组件创建时读入就可以了.
我借用kdevelop自己生成的Qt单文档程序实现了这个功能,具体操作如下:
1.重载RecordPosApp类的closeEvent虚函数.
protected:
virtual void closeEvent(QCloseEvent* e);
2.实现closeEvent函数.
void RecordPosApp::closeEvent(QCloseEvent* e)
{
//创建文件
QFile f("Pos.txt");
if ( !f.open( IO_WriteOnly) )
return;
QTextStream t( &f );
QString strPos[4];
//记录组件的几何坐标
strPos[0].setNum(this->x());
strPos[1].setNum(this->y());
strPos[2].setNum(this->width());
strPos[3].setNum(this->height());
//将组件的几何坐标写入文件
t <<strPos[0]<< "\n";
t <<strPos[1]<< "\n";
t <<strPos[2]<< "\n";
t <<strPos[3]<< "\n";
f.close();
//退出整个程序
qApp->quit();
}
到这里,记录部分就写完了.下面是读入部分.
3.读入组件的几何位置.
这段代码书写具体函数不限,只要被RecordPosApp的构造函数调用的就可以了,我写在了
RecordPosApp::initView()中.
具体如下:
void RecordPosApp::initView()
{
////////////////////////////////////////////////////////////////////
// set the main widget here
view=new RecordPosView(this, doc);
setCentralWidget(view);//这里以上是原有的代码
//打开文件
QFile f("Pos.txt");
if ( !f.open( IO_ReadOnly ) )//打不开的话不进行操作
return;
QTextStream t( &f );
QString strPos[4];
//从文件中读入位置的值放入字符数组
strPos[0]=t.readLine();
strPos[1]=t.readLine();
strPos[2]=t.readLine();
strPos[3]=t.readLine();
//设置本组件的几何位置
this->setGeometry(
strPos[0].toInt(),//x
strPos[1].toInt(),//y
strPos[2].toInt(),//width
strPos[3].toInt());//height
f.close();
}
这样,在程序开启时就被重新设置了一次几何位置了.
junglesong 原创
2004-3-17AM -
2004-03-17
[编辑] 在linux下如何安装java环境. - [Java开发专辑]
看过一篇关于如何安装java环境的文章,本人测试了一下发现有不符合处,下面我说出自己的方法,请大家批评指教.
1.下载jdk,本人是从sun网站下载的,名叫"j2sdk-1_4_0-fcs-linux-i386.rpm".
2.安装jdk,当然是命令"rpm -ich j2sdk-1_4_0-fcs-linux-i386.rpm"了.
3.查看.如上安装完成后在"/usr",下会生成一个"/java"目录,再里面有一个"j2sdk1.4.0"目录,程序就在里面了.
4.修改配置文件.进入"/root",修改文件".bash_profile",注意这是一个隐藏文件.
修改如下:
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
BASH_ENV=$HOME/.bashrc
USERNAME="root"
JAVA_HOME=/usr/java/j2sdk1.4.0 #这里需要修改
PATH=$PATH:$JAVA_HOME/bin #这里需要修改
export JAVA_HOME USERNAME BASH_ENV PATH #这里需要修改
5.检测.完毕后请再次logout和login,修改就完成了.现在可以在命令行输入"java"来测试一下了.
junglesong 编辑
2003-4-6 -
2004-03-16
[转载] 裁员纪实:联想不是我的家 - [工作-生活]
裁员纪实:联想不是我的家
(2004.03.16) 来自:中国计算机报 maosj(北京农民)
今天,恐怕是联想历史上规模最大的一次大裁员。我们部门9个人,今天送走了三个,还有三个要转岗,剩下三个。整个研究院走了30多人,转岗20多人。这是我经历的第二次所谓战略性调整,有很多感触,却又好像什么都堵在心里,说不出来。干脆简单记录下这段往事,提醒自己。
[联想精细化裁员]
昨天晚上,研究院秘密召开紧急会议。有20多位“责任经理”参加,我才清楚了整个裁员过程。3月6日启动计划,7日讨论名单,8日提交名单,9-10日HR审核,并办理手续,11日面谈。整个过程一气呵成。
今天就是面谈日。在B座一层的两个小会议室。进去的人,领导首先肯定他过去的成绩,然后解释战略裁员的意思,然后告知支付的补偿金数额,然后递上所有已经办好的材料,然后让他在解除劳动关系合同上签字。平均每个人20分钟。
被裁的员工事先都完全不知情。在面谈之前,他们的一切手续公司都已经办完,等他们被叫到会议室的同时,邮箱、人力地图、IC卡全部被注销,当他们知道消息以后,两个小时之内必须离开公司。
所有这一切,都是在高度保密的过程中进行。即使我是责任经理,我也只知道明天由我陪同的员工----坐在我隔壁办公位的,朝夕相处两年多的一个女孩,S。
[S]
我不知道昨晚我是怎么过的,心情特别不好。根据公司规定,我不能提前告诉她。只觉得心里堵得慌。和我朝夕相处两年的同事,明天就要被裁员了,而她一点也不知道。开完会打车回家时,我感到特别疲惫。司机开口了:你怎么会累呢?你们这一行挣钱多容易呀。我苦笑了一下,没有回答。
早上,S比我到得要早。向她问声早上好后,我就心虚的不敢再说一句话了。我照例喂我桌上的小金鱼。研究院乔迁研发大厦的时候,每个人发了两条小金鱼,但这帮粗心的研发人员照顾不周,能活到现在的,实在是不容易。S还拿我的鱼开玩笑,说这整儿一鱼精,居然还能活着。
我不再说话,坐在电脑边发呆,等待着那一刻的到来。电话终于响了,我走到S面前,先和她握手,再叫她去楼下的会议室。她知道去会议室意味着什么。那两个会议室从早忙到晚,所有进去的人,出来后就直接收拾东西走人。但S一直很平静,因为在她之前,我们部门已经进去两个了。是J和她谈的,大家都这么熟了,也不用多说什么,不到五分钟,就结束了所有谈话,在解除劳动关系合同上签了字,走了出来。S是FM365转过来的,经历过365那次疯狂的裁员,她那次也送过好多人,所以她很清楚这一切。
然后回到办公位的时候,陪她收拾东西。到午饭时间了,她说,先去食堂吃饭吧。但我不忍心告诉她,她的IC卡现在已经被注销了。所以我劝她去外边吃。负责另外一个人的责任经理却直接说出来了,还有人告诉她,人力地图也已经注销了,当时S明显非常失落,感觉突然和公司一点牵连都没有了。她在联想工作三年了,可就在两个小时之内,联想就不再有她的任何痕迹。被公司抛弃了。就这么抛弃了?转眼功夫,就不再是曾经引以为豪的:“联想人”啦?
中午,部门全体去辣婆婆吃散伙饭。不记得说了些什么。
下午,我送S到家。路过一个小学门口,堵车,她说,我还从来没有下午从这里走过,从来没见过这群孩子们放学。是呀,我也是每天工作到很晚,白天回家还真不习惯。在她家坐了一会儿,因为我知道她这时候心里肯定非常不好受。她说了很多当年365的事情。是呀,不管你如何为公司卖命,当公司不需要你的时候,你曾经做的一切都不再有意义。我特意多呆了一会儿,听她说话,因为我知道,S虽然表现的很坚强,但我一转身走掉,她很可能会哭的,就像今天裁掉的许多人一样。
[重灾区]
服务器、职能,是这次裁员的重灾区。其中服务器研究室今后可能就不存在了,今天裁得只剩下5个人。早上我就听说那边已经走空了,有几个人哭了,但我没有过去看。有的人情绪非常激动,因为绝对想不到会落在自己头上,但是,战略裁员的意思就是说,不是以你的业绩作为标准,换句话说,就是没有标准。有好几个原来的大牛人,甚至是当时重金从外面聘请的博士后,也就那么走了,没有一点商量余地。就连服务器研究室的主任都走了。这整个方向不要了,这是谁的错?不知道,但只知道受伤的是最底层的员工,难怪有个清华刚毕业的女孩,哭得一塌糊涂。
职能的助理几乎走光了。和我熟悉的A、Q,都还没来得及说再见。现在研究院不设置助理岗位了。前几天在食堂碰见她们,我还称她们是研究院的形象代言人。
W也走了,这是我的老战友了。我初进联想的那个项目组,到现在,还在联想的,只剩下我和G、J了。我还记得,那年,我们项目组被号称是研究院的一面旗帜。因为我们开发的内容管理系统,成功地挽救了FM365。后来365倒了,我们就支持赢时通。后来赢时通也倒了,于是研究院信息工程研究室也就没有了。整个研究室当年的30多号人,到现在,还在原岗位的,只剩下我和WW、Y了。W非常惨,他 -
炎黄肇祖,披荆拓土;华夏雄兵,天下布武。
日出日落,涤荡千古唯我汉唐猛士;
潮去潮来,泽沐八荒唯我中华武魂。
中华武魂者,我华夏民族所以延续六千载而亘古不灭之根本所在!中华武魂者,我赤县神州所以历千万难而金瓯永固之不二缘由!
何谓中华武魂?大仁大义大智大勇大猛大狠大忠大烈大信大坚韧大根基大风流倜倘者是也。
大仁者,司马骧苴 之仁也。世界之大,唯我中华自古以仁为本以义为治,义不获仁,以权(势)取之。权从何来?权自战来,故司马法有云:“杀人安人,杀之可也;攻其国,爱其民,攻之可也;以战止战,虽战可也。”此等大仁,岂是当今泛滥成灾之妇人之仁可及?! “国虽大,好战必亡;天下虽安,忘战必危。天下既平,天下大恺,春蒐秋狝,诸侯春振旅,秋治兵,所以不忘战也。”此等强兵不黩武,争战为安民之战道,真天地大仁之道也!
大义者,管桓 之义也。3000年前时值华夏危难之秋,东夷、西戎、南蛮、北狄、环伺中原,华族小国不断灭亡竟至西周天子亦受戮于犬戎,神州风雨,谁补天裂?!好管仲,佐齐桓,尊王攮夷,一战破戎强燕,二战破狄复卫,三战破狄复刑。想此二国均已亡国,若是贪图小利之辈,必会借机吞之,哪有如桓公者,割肉助邻,不光助军马财帛,还助人口土地,为神州树榜样,从此共抗外族。此等大仁大义,天下胡族安能不服?华族能渡此难,功归春秋五霸,五霸之始作俑者,大义齐桓是也!
大智者,班超 班定远 之智也。定远少时投笔从戎,壮年率卅六壮士入西域,斩匈使得鄯善,杀巫师服于阗,擒兜题降疏勒,战两界破莎车,更有疏勒一战,以不足万人破月氏七万大军,葱岭南北,无不震服。其时汉庭早已放弃西域,班超仅以数十抗命不归之汉军纵横西域三十载,合纵连横,最后竟得率七万西域联军攻灭焉耆而一统西域五十余国于大汉天庭之下,非有大智慧,焉能成此伟业?!
大勇者,任嚣 之勇是也。时值秦始皇龙兴,开疆拓土。任嚣受始皇命,策屠睢,统大军五十万,兵分五路,雷击百越。其时华南仍为洪荒之地,草木遍地,虎狼成群,更有重山叠嶂,无路可通。大秦铁军,开灵渠,辟新道,出赣江,越南岭,战陆梁,定红河,三年不解甲,主帅尉屠以下二十余万人战殁!勇任嚣,继战旗,率余部血战经年,终得略定两广、闽中、安南之地,置南海、桂林诸郡。我华族今日独享此华南膏粱之地,功有此两千年前巨勇战将也!
大猛者,征东平西 两辽王 薛仁贵 之猛也。初征高丽,手持方天戟,腰挎两张弓,大呼陷阵,枪挑温沙门力擒契丹王 。再战西征,“单骑退回纥,三箭定天山”回纥九姓全部降伏。高丽又起,薛仁贵再挂帅,斩杀盖苏文,活捉泉男生,连破40余城攻灭高丽。晚年,吐蕃势力向北发展,突厥也不断侵扰唐北境。这时,薛仁贵任瓜州长史,右领军卫将军,兼代州都督,率军前往云州(今山西大同市)击突厥。突厥闻薛仁贵,不敢当其锋,一时奔散。薛仁贵乘势进击,大破突厥,斩首万余级,俘获两万人,及牛马羊三万余头。吐蕃使辰更不敢抬头直视,漆行跪拜,威镇天下 仁贵真乃大猛者也!
大狠者,五胡乱华时河北唯一汉人国主 冉闵 之狠是也。时有羯胡暴孽,残害汉民,先有驱数十万汉丁修林苑甲兵,死伤遍野之举(五十万人造甲,十七万人造船,死亡超过三分之二),后有夺汉女四万入后宫肆意凌辱之行。汉儿冉闵为羯主石虎之义子,忍辱偷生三十载,一朝得机,旦夕间尽灭羯胡二十余万,及至遭群胡围攻,其首战以一千汉骑破胡骑七万,再战以汉军八万破众胡联军十二万,三战先败后胜以万人斩胡三万,四战又有以步卒八千敌慕容鲜卑铁骑十万竟十战十捷之绩!廉台之战,英雄末路,冉闵脚踏朱龙马,右手持矛左手握戟,冲入鲜卑重军,手刃百余人,及至马中七箭倒落被俘,面对鲜卑国主质问,厉声大呼:“天下大乱,尔曹夷狄禽兽之类犹称帝,况我中土英雄,何为不得称帝邪!”(天下大乱,你们这些禽兽一样的蛮夷尚且可以称王称帝,何况我们堂堂中华英雄呢!)其后鲜卑王慕容俊斩闵首于遏陉山,山左右七里草木悉枯,蝗虫大起,五月不雨直至于十二月。慕容俊惧之,遣使祭祀,追谥闵为武悼天王,当日即大雪过膝(南晋书 正史所载)。冉闵,真大绝大狠之天煞星下凡是也!
大忠者, 张议潮 之忠也。安史之乱,肃宗尽调精锐边军入卫中原,吐蕃乘乱陷河西四州。待得大乱平定,唐室亦衰,无力西顾。光阴似箭,日月如梭,转眼九十三载。敦煌出义民张议潮,“广结众英豪秘谋归唐”,候得时机,揭竿而起,河西万民响应,吐蕃败北四散逃逸。好个议潮,不割据,不称王,遣使十路飞报长安,河西四州自此回归大唐。想来中华自古多肝胆忠义之士,然像义潮此等隔绝百年之后仍一心向唐者,虽不绝后,亦属空前,张义潮,实乃吾华旷古之大忠之士也!
大烈者,王坚 之烈也。宋末时为合川府偏将,时值贾似道误国,蒙军旗指之处,诸州望风而落。大厦已倾,唯王坚独守孤城三年不降。蒙军云至而攻,王坚聚城中所有金银铜铁杂铸为炮以击蛮蒙,尽杀城中牛马以食战士,自焚家舍积聚以示死战,蒙军虽众亦不能猝拔。日夜血战,退蒙古兵数百次,更一朝炮毙大汗王“蒙歌”而获大胜。后问讯又率部支援 -
2004-03-09
[ZT]中华英雄冉闵 - [梦回汉唐]
中华英雄冉闵
一)有关冉闵的前言
冉闵,为汉族的存在作出突出贡献。但在学生正规历史教科书上没有的人,甚至很多历史系的大学生都不知道,除非对这段历史特别喜爱。
先看看韩国民族英雄----张保皋!(至今被韩国学生穿在身上,过目不忘)
“去年7月,我到北京旅游的时候,突然看到一个很奇怪的现象,好多好多的韩国学生都清一色穿着白色的T恤衫,秩序井然的走着,上面写着汉字和朝鲜字,背面汉字是‘张保皋后人’!我不知道这个张保皋到底是何许人也,只觉得很感动,一个人能在死后这样被后人怀念,真的很难得!回来以后我就翻看有关张保皋的资料,终于知道这个张保皋的来历!
弓福又名弓巴,汉名张保皋。年轻时曾渡海到唐朝投军,在徐州为武宁军小将。据杜牧《张保皋、郑年传》记载:“张保皋、郑年者,自其国来徐州,为军中小将。保皋年三十,郑年少十岁,兄呼保皋,俱善斗战,骑而挥枪,其本国与徐州无有能敌者。”当时,唐朝登莱沿海奴婢买卖中有大量的新罗人被卖为奴。弓福在获悉这一情况后,从唐朝离职回国,上谒新罗哀庄王曰:“遍中国以新罗人为奴婢,愿得镇清海,使贼不得掠人西去。”于是哀庄王任命弓福为清海镇大使,率领万余人的军队在此布防。从此,贩卖新罗人口的活动在弓福的打击和唐政府的多次禁令下销声匿迹了。弓福还通过从事与日本和唐朝的海上贸易大发其财,仗着自己兵强马壮、财政富裕起了干涉朝政的野心。他帮神武王登基,后来他企图立自己的女儿为文圣王妃,被拒绝后保皋于846年起兵作乱,这就是朝鲜历史有名的“弓福之乱”,武州有一个名叫阎长的人在一次饮宴,趁保皋酒醉,拔剑斩之。把弓福人头拿去文给了文圣王,文圣王为了免除后患,于851年将清海镇废镇。
张保皋有不少缺点的,甚至起兵造反,但韩国人民还能宽容他,被韩国人视为其民族英雄,因为他结束了朝鲜沿海一个地方人口被掠卖到唐的历史。山东荣成的赤山法华院修建有张保皋纪念塔,韩国金咏三总统亲自来为其题词,并书写“张保皋纪念塔”。
1991年4月,韩国诚信女子大学教授、世界韩民族合会长崔珉子女士光临此院,回国后,筹资10万美金,于1993年11月来赤山法华院东南山修建了张保皋纪念塔。赤山法华院依山傍海,风景秀丽,每至春季,山上的映山红以及桃花、梨花、院中的月季花、樱花,争相开放,景象颇为壮观迷人。来此观光旅游的韩国人络绎不绝,韩国不少民间组织和个人来此纷纷捐资立碑以示对张保皋的怀念。”!
“弓福之乱”的造反者张保皋,至今被韩国人民和总统视为民族英雄,韩国人没有因为他造过反污辱他,因为他对韩国人民有功,他在中国呆过的地方每年都有哪么多韩国人来怀念他。如果张保皋是中国人,就他的哪么些“缺点”,就足以给人批的体无完夫,打入十八层地狱。
五胡乱华,汉人传奇英雄冉闵,胜过所有古西腊神话人物。却没有得到历史应有的评价。当时正如古书所描绘“北地沧凉,衣冠南迁,胡狄遍地,汉家子弟几欲被数屠殆尽。”汉人冉闵忍辱二十年得机起兵造反,力图匡复华夏,灭胡无数,血洗亲人之仇,亡国之恨!及至群胡围攻。首战,冉闵以五千汉家子,大破胡骑七万。次战,汉骑一千,败其三万。再战,诛胡军三十万,凡此十数战,项羽再世鏖兵金匮,校战玉堂也不复如此矣。汉家军威振于北朝,冉闵立我汉家精神,不复为任人屠割之羔羊。
在中国,没有任何“缺点”,几乎“完美”的岳飞,文飞祥都可轻易取消“民族英雄”称号。如果岳飞没有内部阻挠,成功“收复中原”,同样要杀很多胡人。他也会背上“种族屠杀”的罪名。
时过一千六百多年,冉闵的豪壮语任激动人心:
“诸胡乱我中国,也已数十年,今我与诸君尽诛天下胡族,共雪我中原百姓血海深仇。” ——大会英,致书各地。
闵遣使临江告晋曰:“胡逆乱中原,今已诛之。若能共讨者,可遣军来也。”朝廷不答。
“天下大乱,你们这些凶禽一样,人面兽心的蛮夷尚且可以称王称帝,何况我乃是堂堂中华英雄!”——被俘拒降。
冉闵死,遏陉山草木悉枯,蝗虫大起,天以不雨以示大哀无泪。天地大恸无非屈圣贤辱,千年不得昭雪。连上苍都知道冉闵的冤屈,上天都感动了。
二)不什么不能让冉闵升为民族英雄?
日本有史料他叫梁闵而不是冉闵,应是北朝的人写的。与中国唐朝编著的晋书有所差异。不讨论是梁闵还是冉闵的问题,他到底姓什么也无从考证,毕竟历史已经过去了一千几百年。因此我在有关他的帖中一律以冉闵为准。
中国有关史料有《晋书》百三十卷,传为唐臣房乔所著,独宣武二帝纪,与陆机王羲之传论,出自唐太宗手笔。晋书尽管对后来称帝的冉闵有些微词但无恶意诋毁。
在这之前的《十六国春秋》《涑水通鉴》《紫阳纲目》等等和日本国的有关史料,与《晋书》相出入者,亦不胜举焉。但史学界一般以唐朝编著的《晋书》为主。从这些书中看到的冉闵完全是一位英武非常的英雄。
清朝在修史时对这些历书就作了大量的删改,使中国古籍残缺不全,破坏很严重。修《四库全书》删除、改动了很多中国古代英烈抗击五胡、金、元、清的宝 -
2004-03-05
一首永恒的歌——国际歌 - [我的博客]
一首永恒的歌——国际歌
(法)鲍狄埃词
(法)狄盖特曲
起来饥寒交迫的奴隶
起来全世界受苦的人
满腔的热血已经沸腾要为真理而斗争
旧世界打个落花流水奴隶们起来起来
不要说我们一无所有我们要做天下的主人
这是最后的斗争团结起来到明天
英特纳雄耐尔就一定要实现
这是最后的斗争团结起来到明天
英特纳雄耐尔就一定要实现
从来就没有什么救世主也不靠神仙皇帝
要创造人类的幸福全靠我们自己
我们要夺回劳动果实让思想冲破牢笼
快把那炉火烧得通红趁热打铁才能成功
这是最后的斗争团结起来到明天
英特纳雄耐尔就一定要实现
这是最后的斗争团结起来到明天
英特纳雄耐尔就一定要实现
是谁创造了人类世界是我们劳动群众
一切归劳动者所有哪能容得寄生虫
最可恨那些毒蛇猛兽吃尽了我们的血肉
一旦把他们消灭干净鲜红的太阳照遍全球
这是最后的斗争团结起来到明天
英特纳雄耐尔就一定要实现
这是最后的斗争团结起来到明天
共1页 1






