第一篇:C++ 学习之路之感想
1. 认真选好C,C++
在面向对象的语言中,谈论最多的莫过于C++和Java,个人认为讨论C++或Java谁优谁劣已经没有意义。Java在网络环境和跨平台的开发上具有很好的优势,C++则在效率方面有Java无可比拟的优势,因此多应用于Desktop的开发。实际上一个好的C++程序员是可以在短时间内熟悉Java的开发的。
在学习C++时,可以先学习C,也可以直接过渡到C++,但是在C++学习的过程中要注意面向对象的思想和方法,C++与C最大的不同点是他们用于开发软件所采用的方法不同,C主要用于结构化设计,C++则采用面向对象的方法。
在学习C++的时候,注意实践过程,不要轻视每一个小的实践,在实践中理解的内容,是远远从书本学习不能比拟的,这为以后使用一门开发工具打下了必备的基础。
2. 熟悉一门开发工具
当熟悉C++语言后,你必须熟练使用一门开发工具。在Windows平台中,最为推荐使用的是Microsoft Visual C++(VC),相对于C++ builder来说,虽然它的学习过程要漫长些,但是你一旦熟悉它以后,就会感觉到它的强大。
学习VC,首先要熟悉它的开发环境,怎么设置一个建立一个工程,怎么编译和调试程序,这一阶段可以在学习C++的过程中完成。
由于VC为你建立Windows环境下的程序建立了一个标准的流程,因此,学习VC的下一步是熟悉VC建立Windows程序的机制和过程,这一阶段学习的主要内容是MFC(建议不要从SDK看起)。
3. 认真完成一个或几个项目
在有一定的语言基础,以及能基本熟悉开发工具后,就是通过实践来进一步认识和巩固你学习的过程,在这个过程中,一方面是积累经验,另一方面是完成学习思路的整理。这部分实践取决于你的兴趣和爱好,坚持下来,你的学习过程就完成一大半了。
4. 注重交流和反馈
一个人的经验和智慧总是有限的,在学习的过程中,遇到不懂得问题,可以通过互相交流得到解决。这也可以节省你很多冥思苦想的时间,以下是常用的网址:
国内:http://
5. 经验的积累
一个熟练的程序员和一个新手的开发效率往往可以达到10倍以上,开发出来的程序的质量也相差很大。在学习的过程中,多注意平时经验的积累,在积累一定经验后,在不知不觉中就有一个量变到质变的过程。经验的积累主要包括几个方面:
有一个好的程序代码风格(编码,变量命名,注释)开发过程中的各个技术细节 开发工具的使用技巧 项目的设计方法和体系设计 设计模式的学习(Design patterns)
6. 确定发展方向
软件包含了一个广泛的范畴,想要做一个全能的程序员是不现实的。在熟悉以上开发后,你可以选择某一项专项技术,如网络的开发,多媒体的开发,游戏的开发,嵌入式系统的开发等。你也可以选择项目管理的道路。当到达这个阶段的时候,我认为你对整个软件开发的认识已经发生了根本性的变化,并有自己的认识和心得了。
第二篇:c++学习感想
C++的学习感想
06光信2班赵飞学号:060105021106记得大一下学期学习C语言的时候,我们都有这样的困惑:课堂和教材的内容基本上都能接受和理解,但真要实际动手编写程序又感到脑袋一片空白而无从下手;其二,整个课程的所有内容好不容易学完了,但对编写实用化的程序,总感到眼花缭乱而无法下手,真个儿“欲起平之恨无力”。以至于在很长一段时间里在我的内心里产生了一种学习C语言和c++的恐惧感,认为自己不是学C语言和c++的料,将来打死我也不会朝C语言和c++的方向发展。
到了大二后,看着我周围的同学一个个地去参加计算机等级考试,拿了很多证书,一种羡慕感油然而生,决定也要像他们那样多掌握些计算机方面的知识和技术。在我的视野里消失了一年多的C语言和c++又在我的心目中占有了一席之地。我开始决心学好它。恰逢本学期开设了选修课c++,我便毅然决然的报了名,在这门课程快要结束的时候,我也参加报名了计算机等级考试二级c++,看看我这个学期是否真的学了一些东西。
崭新的21世纪,以现代电子信息产业为龙头的全球经济一体化浪潮正席卷世界。此时的我们面临着巨大的挑战和机遇。而以IT技术为基础的信息产业正深入到人类社会生活的方方面面,无论是生产制造、国防和科技等领域,还是第三产业,计算机软件现已成为担任重任的核心力量,互联网和软件已成为新经济发展的重要基础。因此,计算机软件技术将是各类专业的大专生、本科生和研究生必备的基础知识。
c++是著名的C语言的面向对象的扩展。C语言最初设计时是作为一种面向系统软件(操作系统Operating System和语言处理系统)的开发语言,即是用来代替汇编语言的,但是由于它强大的生命力,在事务处理、科学计算、工业控制和数据库技术等几个方面都得到了广泛的应用。即便进入到以计算机网络为核心的信息时代,C语言仍然是作为通用的汇编语言使用,用以开发软件、硬件结合的程序,如实时监控程序、控制程序和设备驱动程序等。而c++是C语言的超集,它保留了C语言的所有组成部分而与之兼容,既可以做传统的结构化程序设计,又能进行面向对象程序设计,也是当今世界上比较流行的程序设计语言。因此,学好c++对我们未来找工作大有裨益。
对于c++的学习,我有一些学习方法可以和大家分享,并认为通过这些方法可以使我们的编程技术获得较大提高:
第一,是要加强实践。C++程序设计语言是一门实践性非常强的课程,若要真正掌握编程技术,使编程能力有较大的实质性的提高,必须在认真听课勤做笔记并读懂教材的基础上,通过上机实验加强开发软件的基本技能训练。只有勤学苦练才能积累宝贵的编程经验,悟出编程技术的要领,牢固地掌握像Borland C++和Visual C++这样优秀的应用程序开发工具,快速冲向计算机应用领域的前沿。
其二,便是要学习掌握相关的程序库(c++当然首先要掌c++标准程序库)、相关的平台技术(eg.NET),因为这些都是学习c++应掌握的辅助知识。在众多的计算机学科中,有很多都出现了内容的交叉现象。我们在学习c++的时候,如果能多看看有关这方面的书和查查相关的资料,对我们地学习也不无裨益。在这些程序库和平台技术上,我们还要锻炼自己对目标问题的分析和归纳能力,做到能够知其然且知其所以然,并能举一反三,扎实、灵活和系统地掌握编程要点。
第三,便是要多看有关c++的资料书。选取一两本自己能够容易看懂的c++方面的书,进行精读,和细读。在学校的图书馆阅览室有很多关于c++编程方面的书籍和资料,我们可以借几本过来,对照着看看,对我们的学习是一定有帮助的。
最后,便是要持之以恒,锲而不舍。罗马的建成不是一日之功,任何学问的从熟练到精通都不是三天两天的事。我们必须明白这个浅显的道理。学习c++本身就是一项艰苦的历程。浮躁的人、没有忍性的人,是肯定学不好c++的。我们必须有狂热的编程热情,否则是很难坚持下去的。我们也必须学会自信,因为有些时候尽管我们花了相当多的时间和精力,我们也不能写出一个程序。写程序确实是很麻烦的,有时需要顿悟,有时需要渐悟。当我们真正学好了,学精通了,便会有“一览众山小” 的感慨了。我们就会因此而有一种莫言的自豪感。
如今美国的次贷危机引发的全球经济危机正袭击着中国的沿海地区,许多的工厂在经济危机的打击下倒闭了,我们的就业压力变得更大了。能否在未来的激烈竞争中脱颖而出、出人头地完全要靠我们的真才实学。在软件技术行业,我们必须掌握好c++。通过对c++的学习达到精通后,我们还可以进一步学习Java、c#等,这时学习这些语言就相对较轻松了。其实只要我们能真正地把c++程序设计语言学精、学透,是不愁找不到工作的。
对我们光信息科学与技术专业,通过学习c++程序设计语言,我们可以用它来进行光学计算、光学设计等,将那些不能通过手工计算设计的,可以通过c++编程算出来,尤其是关于卷积积分、傅里叶变换、拉普拉斯变换等关于高等数学方面的数学物理方程。还有Zemax的光路设计等。可以说,学好c++对我们学光信息科学这一专业的,意义非凡。
因此,我必须努力掌握好它,为自己能够在以后找份好工作打下坚实的基础。
2008.12.16
第三篇:学习JAVA之前有必要学习C++吗
学习JAVA之前有必要学习C++吗?
在很多大学计算机或软件专业的教程中,C语言及C++往往作为必修课,JAVA往往作为选修或限修课程。C语言是应用最广的语言,在很多工科专业,如机械、电气、通信等都会开设C语言课程。而C++和JAVA作为高级语言,则往往只有计算机类相关专业开设。那么,作为一个想要往软件领域发展的童鞋来说,先学C++还是先学JAVA?如果打算毕业从事java开发,有必要学习C++吗?下面就针对这个问题给大家以简要分析:
JAVA和C++基本思想相同
JAVA和C++都是面向对象思想,同属于高级编程语言。一般来说,做任何高级开发,使用两种编程语言都可以实现。JAVA可以算是C++的表亲,C++也算是JAVA的前辈。JAVA是参照C++的精髓而创造出的编程语言。JAVA希望能取代C++,同时使编程变得简单。JAVA比C++简单
JAVA比C++简单的多,因为C++里有许多比较难的概念,尤其对于初学者来说,比JAVA要难的多。JAVA的初衷就是要比C++简单,而JAVA比C++多的一个优势即时跨平台性,这实际上也使java变得简单,由此可见,JAVA创始人的目的就是使java变成一门容易掌握且强大的简单高级语言。
时间充足的大学生最好了解一下C++
大学生时间比较充足,所以学一下C++还是很有必要的。因为C++中有些内容是非常巧妙的,C++在性能方面要强于JAVA。当然,是先学C++再学java,还是后学C++,都无关紧要了,实际上两者基础部分差不多,从继承和多态处才开始不同。
快速学习者最好精于一门
编程语言,一通百通。你精通了一门,学习其他的就很快了。如果你时间不充足,比如上java培训班的同学们,时间紧迫,不可能兼顾学习java和c++,肯定是从一门由始而终的学到底。这样能够比较快的掌握编程语言,以后时间宽松,则需要多接触一下其他技术,丰富自己的知识技能体系,使自己成为一个真正的“能手”。
第四篇:c++学习经验交流
曾经因为自己的一些帖子在网上引起了大家对C++学习和使用的讨论,再回想起自己接触C++三年多,一年前鼓足勇气重新开始再次学习的情景,现在的我心中多了几份感慨,更多的是觉得自己学习的过程颇具普遍性,几次想把自己的一些心得写下来,对自己算是个总结和回顾,对别人即使谈不上帮助但相信也能算是个学习C++的案例分析吧。但开始几次提笔总是过于追求完美,想把所有的东西都写下来,但几次提笔和几次放弃后,我终于打消了“完美”的这个想法,等一下还要和自己女朋友打电话,就这一个小时内,能说多少算多少吧,毕竟我是说出来写下来了。
接触C++是在99年,那个时候自己已经有一些C语言的基础了,刚开始会用的关键字比起C来说也许只多了Class吧,那个时候在学校,也学了VC++,写了几个很简单的游戏程序,然后就因为很多琐事没有再在C++上有更多的深入,这也是我现在非常遗憾的事情,也许那个时候我能够投入进去,现在应该是能颇有小成了。02年开始了一个新的里程,我自己有充足的来支配时间。就在那一年的暑假,开始了新的C++学习,我知道我以前的基础对于学习C++来说,几乎不会有什么更大的帮助,所以我选择了重新开始,从IF….ELSE这样的语法开始。选择的第一本书是好友友情赠送的《C++ PRIMER》,当时我只是看了不到三天,我就没有继续看了,我知道这本书非常不错,但是肯定不适合当时的我,因为从一开始就有过多的东西给我困惑,类,模板,重载……,这样东西几乎让我放弃学习C++,因为我那个时候觉得自己C还是有一定功力的,就把C搞透对我来说那个时候也是个不错的选择,但毕竟C的内涵无法让我有更多的激情,重复的东西我向来就不喜欢。然后我开始考虑++这个两种语言唯一的标示区别到底意味和蕴涵着什么?同时我开始考虑到底程序设计语言是什么?随后我在图书馆借了本书《程序设计语言的概念和实现》,无论别人如何看待这本书让我明白了很多,因为这本书最大的特点是抽象出了现代程序设计语言的各种语义和其中蕴涵的思想,让我对语言本身这个概念有了更深刻的认识,让我建立去了各种语言自身的不同的语法都代表实现一种对于所有语言都共有的语义,而一个富有逻辑的语义系列却反映出了更一般的程序设计思想。在有了这个概念后,我接触到了《C++设计与演化》这本书,在学习C++过程中这本书对我的帮助是最大的,这本书让我明白了C++的设计理念和各种语言设施所代表的实现语义,既各种纷繁的C++语言特性都是为了实现某种功能并且在不违反C++设计哲学基础上建立起来的。这样的对于C++的宏观基础,让我在以后的学习日子里受益非浅,而《C++设计与演化》这本书我也同时具有中英两种版本,每当我对很多关于C++特性困惑的时候我都会把英文版(随便炫耀一下,这本书上有B.S的亲笔签名:))拿出来,再好好的看看。就象前阵子对于C++的学习,可谓讨论颇多,我自己也再次把这本书拿出来,评价自己所持有的观点是否正确。从此我认为自己算是走入了学习C++正确道路。
10月B.S来到中国,那个时候的我对于C++可以说只是个完全初学者(呵呵,给大家举个例子,那个时候我在杭州碰到了cber,他开始告诉我他的网名,我却说你的姓名是什么?后来他写下他的名字和联系方式我却还不知道我对面站着的是个C++顶尖高手,幸亏那个时候的我还和他合影了一张相片,这算是我比较明智的地方吧,至少没有留下遗憾。)我虽然是个初学者,但我不认为我应该错过这次和大师亲密接触的机会(尤其是在反复拜读过他 的书和大部分论文后),自费来到杭州(其实也花了不少那里同学的钱:))听了B.S在浙大的报告,我很早就去了,坐在第一排,整个报告会也是我第一个问问题,回想那个时候我的问题多少显的幼稚,但我告诉自己无论自己现在怎么样,这样的机会一辈子也许不会有了,所以我始终保持了十分积极,B.S的答复十分详细以至与我到后面就基本处于假听的状态:》但B.S的大师风范却让我颠倒,从此对于C++的学习我也不再功利。
学习就是积累,期间我看过《C++编程思想》,又对C++有了更感性的了解,三个月后再次拿出《C++ PIRMER》,这个时候我已经能非常明白LIPPMAN这本经典大作的巧妙用心了,它绝对不是给初学者看的,但对于入门后完全的学习和理解C++效果却十分明显,从书的一开始就直接进入C++的主题,前面五章都用类设计一个数据结构,让读者完全明白了各种用户定义类型所代表的抽象能力,然后直接进入第六章标准库中的容器类,这样的设计让读者十分清楚的建立容器和类这两个C++中十分重要的概念,之后的学习自然是非常富有满足感。以前学习编程的经验告诉我,写程序才是学习的中心,所以并且我把《C++ PRIMER》中的大部分代码都调试通过了,样例的代码连贯性也是这本书的最大的特点,而另外一大特点就是代码没有一个是可以直接通过的,都需要自己的调试,在调试这样的代码过程中更加深了我多C++的认识。不到两个月的时间就把《C++ PRIMER》初看了一遍,加之在CSDN上面和大家的交流,感觉已经建立起了对C++的完整的基本认识。
没有看过《C++程序设计语言》,算是学过C++吗?在我眼里,如果连语言的创作者的书都没有读过,如何去理解这本语言?去年12月我花了整整一个月把这本书好好的看了两遍,唯一的感觉是这本书才是真正有资格称为《C++编程思想》的。书和《C++ PRIMER》是完全的不同风格,后者告诉你的是完整C++的语法和其支持的语义。而前者是真正告诉你如何去用C++思考问题和编写符合C++设计理念的代码。你能明白C++的设计理念极其理念下的程序设计思路和代码编写规范。到今年元旦,感觉自己比起当初已经是进步不小,所以没有继续看书,而是在寒假看了几个大点规模的C++程序源代码。
之后,我也读了一些C++大家的作品,在这里需要提出来的是《C++标准程序库》和《C++沉思录》,前者写作方式通俗易懂,但全书内容却十分丰富,对于学习标准库可以说是最佳表现的作品。而后者,阅读感觉和《C++程序设计语言》一样,思想性非常强,读这样的书很累,脑子必须一直思考问题,思考作者里面提出的问题和他提出的解决方式。这本书最大的特点是非常直接的把C++语言的核心暴露出来-----三种抽象模型和极其语言设施本身对这三种抽象模型的支持。而《C++沉思录》给我的更深层思考是什么才是运用C++最合理的方式,这也是后来我发帖说明自己对于C++的学习和使用的一些见解的原始思想来源。
再后来,自己慢慢的用C++实现了一些小程序,有的是书本上的,有的是自己想的,写程序和调试的过程给我的感觉就是烦恼和满足的交替过程也许就是这样的反复过程才是程序员追求的。文章至此,多数记载了自己的历程,对很多看到这里的读者来说相信并没有什么帮助,下面我非常直接的说出自己的学习C++感受,从前面我的经历大家都可以看的出来我不是什么高手,但我保证我下面写的东西对于初学C++的是十分有帮助的,毕竟我刚刚走过那一段时的灰暗日子。
☆━━━━━━━━━━━━━━━━━━━━━━━━☆
即学即用就够了,只是一门语言而已,而且同样是语言,C++远远不如english重要。
☆━━━━━━━━━━━━━━━━━━━━━━━━☆
xor 的发言如下:
☆━━━━━━━━━━━━━━━━━━━━━━━━☆
其实我的建议是……,趁着中C++的毒不深,学Java先。
【 在 Ace(孤鸿·无双)的大作中提到: 】
:学习C++重在理解其各种语言设施所代表的语义,以及C++所能表示的语义所代表的设计思想。首先从宏观上入手,你需要明白的是C++是程序设计语言的本质。在此我把C++最重要的性质写下来:C++是一门静态类型检查,基于C内存模式,支持四种基本程序设计范型的语言。注意,这里说明了三个本质特性,静态说明了语言的类型检查性质,基于C内存模式告诉我们在C++中所有与内存有关的操作都需要程序员自己来负责,这样就带来了很多设计程序时的需要注意的地方,而理解支持的四种基本范型却是理解各种语言设施的基础。然后记住C++的最大的一点设计哲学,也是其贯穿应用C++的一条本质,我引用《C++ PRIMER
☆━━━━━━━━━━━━━━━━━━━━━━━━☆
DonaldDuck 的发言如下:
☆━━━━━━━━━━━━━━━━━━━━━━━━☆
我看过的国人写的书几乎无一例外的老旧,C++标准化已有5年,居然还有一些书连STL都没有提到,用这样的书学到的也只能是老的C++你们也许会说,C++没有这些内容也能用,但我认为学技术就要向前看,这就和现在几乎已经没用人用汇编写应用软件一个道理
第五篇:C++学习步骤
学习C++有那些步骤:
1。学习C++基本语法,参考书籍《C++程序设计》》钱能著,或《C++程序设计教程》DEITEL著,我看的是后者;
2。学习数据结构,参考书籍《数据结构C++语言描述——应用标准模板库(STL)》William Ford著;
3。学习STL,参考书籍《C++标准程序库》候捷译;
4。学习模板,参考书籍《泛型编程与STL》候捷译;
5。深入STL内部,直到能自己写出STL的源码,参考书籍《STL源码剖析》候捷译;
6。学习I/O方面的知识,参考书籍《Standard C++ IOStream and Locales》;
7。重温整个C++体系,参考书籍《C++ PRIMER》和《the c++ programming language》;
8。学习前人的技巧和方法,参考书籍〈effective c++>,;
9。再往上走,从宏观上把握C++程序设计体系,参考书籍<设计模式>,《深入探索C++对象模型》,<大规模C++程序设计>;
接下来就可以分2条路走了:
一、偏理论的道路,考研,注意,不是考计算机系,是考数学系,学习集合论,图论等知识,有一套书叫〈计算机程序设计艺术〉一至三卷,等你把他们都看完了,理解透了,就可以直接去微软投简历了。
二、偏应用的道路,学习windows编程,学习MFC,COM,ATL,以及整个.NET体系。