欢迎来到天天文库
浏览记录
ID:30592644
大小:81.42 KB
页数:10页
时间:2019-01-01
《如何学习一门较复杂的编程语言》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、【zt】如何学习一门较复杂的编程语言C转贴一个如何学习C++如何学习一门较复杂的编程语言前言呵呵,大家好,又来了,其实天天在,大多数时候总是回答一些套话,比如"同意上传。文件名:.文件夹:.",或者"确认完毕,加1分,谢谢支持"之类,大概传过书的朋友都见过吧。前几天,心血来潮,写了一篇如何选书的帖子,写完以后,手痒难忍,不知哪条虫又醒了过来,趁热再来一篇,谈谈如何学习C++,总题为"斑竹观点",不知道以后还会写什么,也许就这两篇打住,也许会洋洋洒洒写成系列(吹牛不上税吧?税务局别来找呀),那就要
2、看有没有心情和那么多闲工夫了,至于别人想不想看,爱不爱看,可管不了,自己痛快就行啦。你自己愿意恶心自己,就往下看,哈哈.闲话少叙,书归正传。话说在很久很久以前,C++红红火火,风头正劲,天下多少英雄豪杰为其马首是瞻.(呸,废话连篇,看西红柿.)哇,不好,躲,躲,躲躲躲.惨,掌声没有,烂西红柿来了一筐,等去换身衣服先..西服换成马褂,咱接着来。睡觉的醒一醒啦,快看呀,窗户外面下刀子了!自从JAVA问世以来,C++阵营人气日下,唉,人的本性就是喜新厌旧,最近又新出一小妞,叫什么C#的,搅得人心惶惶,
3、明明是JAVA的克隆加变异,她干妈(那个叫什么M$的)非要和人家C++攀亲戚,说是C++亲生,和JAVA对着干。唉,这世道,乱套了,不知道这人心都是怎么长的。不怕你们的西红柿了,准备了纸糊盾牌,嘿嘿,除非本·拉登亲自出马.但是,C++周围总还是有一群誓死效忠的追随者长伴左右,任你风吹雨打,自岿然不动。C++把纯粹与高效,精美与诡异完美地,近乎奇迹般地集于一身,吸引着那些喜欢寻幽揽胜的探险家们。当然C++并非不实用,但今天不想谈C++的工业应用(那是的工作,俗),超脱起来,来看看纯粹的C++。如果
4、你想为了找工作而学习C++,劝你就此打住,别往下看了,帮不了你,瞎耽误工夫,也劝你别学C++,改行JAVA吧,或者VB也成。如果你是一个专职程序员,下一个项目是关于C++的,而你还不会,想临时抱抱佛脚,你也别看了,想你的公司会组织你们集体去抱的,你们可以针对你们的项目学习一个够用的子集大概就可以了。这篇帖子不是佛脚,不讲如何速成,只是想针对现在众多想学习C++却又无从下手的学生提出自己的建议。你可以不同意的观点,那么请准备好西红柿,等讲完了,给你们时间扔(事先声明,要好的,烂的不要啊)。好了,如
5、果你的耐心已经让你忍耐至此,而且还想忍耐下去的话,希望你能忍到最后,再也没一句废话了,你没有理由看完上面的废话不往下看。一、什么是C++?一看的标题,大概又有人举西红柿了,您慢着点儿,别闪了腰或岔了气!很多人不知道这个问题的正确答案。如果你还认为"C++是C的超集",那你可是大大落伍了,这是二十年前的答案了。如果你说"C++是一种面向对象的程序设计语言",哈哈,沾边,但也不对,在98年C++国际标准公布以后尤其不对!C++之父BJARNESTROUSTRUP曾有一篇论文LEARNINGSTAND
6、ARDC++ASANEWLANGUAGE,《程序员》杂志2001年4月号有陈崴的译文《将标准C++视为一个新语言》,把C++和它那个好像还不是右派的爹彻底划清了界限。文章对C和C++在COMPLEXITY(复杂度)和EFFICIENCY(效率)两方面做了比较,指出C++已经完全不同于C的观念,并对如何学习标准C++提出建议。有兴趣的朋友可以看看,很有启发性。C++发展至今,其历史已足够写一本书了,BJARNE的经典名著THEDESIGNANDEVOLUTIONOFC++,详细记述了C++设计和发
7、展过程中(1979-1994)的种种考虑与妥协,它不讲C++是什么样的,它只讲C++为什么会成为这样。不建议初学者去看这本书,实在是咬不动,当初已经看得头破血流了,而且这本书只讲到1994年为止,多少有些过时了,如果你已比较好地掌握C++,并想了解其历史,看看倒是有些参考价值。C++虽然起源于C,语法也比较相似,其迅速成功并成为主流很大程度上也归功于C的成功。但经过多年的发展,其最精妙,最有吸引力的部分正是不同于C的那一部分。KOENIG&MOO夫妇在为想成为更好的C++程序员的人提出的3条建议
8、中第1条就是"避免使用指针",你相信吗?指针正是C的核心呀。C的宏、位运算、结构、联合、数组、强制类型转换、指针,在C++程序中都应该尽量避免(在少量涉及底层的程序设计中例外),C++语法上强调的是类、对象、模板、标准库、引用、异常和CONST关键字,思想上强调的是面向对象和泛型。在PROCEDURALPROGRAMMING,OBJECT-BASEDPROGRAMMING,OBJECT-ORIENTEDPROGRAMMING,GENERICPROGRAMMING中,C仅仅支持第一种,而就是在PR
此文档下载收益归作者所有