目录

1.第一阶段:C++基础语法

2.第二阶段:算法练习

3.第二阶段:面向对象

4. 第四阶段:项目练习

5. 第五阶段:出师


        作为十几年的代码老程序员,想到当时学习C++的时候还是很痛苦的,不过我遇到了一个很好的学长,他教会了我很多东西(在入门初期一个好的老师很重要!!)个人忠告,如果是0基础千万不要觉得看看视频就能学会。代码可能没写一行,你就会卡在编译器安装等问题上。并且作为0基础学员在代码编写上有很多的错误,例如中文符号,漏写结束符号等问题,这些都是小问题。老程序员一眼就能看到你的问题,你遇到问题永远不知道自己错在哪里(严重浪费时间)。

        那么学习C++我们需要哪些知识呢?

1.第一阶段:C++基础语法

        这个东西嘛,就像我们学习英语单词一样,因为不熟悉所以会一直出错,如果没有老师在旁边指导排查一个小问题都需要很久的时间。所以建议这个阶段需要老师帮忙不断的纠错。

        并且建议这个基础的东西通过背诵的方式记忆下来,原来我们在大学的时候老师都是然我们手写代码(写在纸上),过程是无比痛苦的但是坚持一段时间下来发现进步会很大。这个阶段没有其他的捷径只能通过勤奋来解决,其实C++的基础语法还是很多的。

        基础内容包含一下知识点:

  • 变量、常量、数据类型(整数、浮点数、字符、布尔等)
  • 运算符(算术、关系、逻辑、赋值等)
  • 控制结构(if语句、switch语句、循环语句等)
  • 函数和参数传递
  • 输入和输出(cin、cout)

2.第二阶段:算法练习

        其实单独分在这个阶段也不太合适,因为在学习基础知识后都需要开始学习算法,算法是核心他和什么语言没有关系,你得了解计算机是如何存储的运算,以及在处理问题上使用什么样的算法和存储方式也就是我们通常说的需要学习《数据结构》。我们当年学习的时候老师给我们定的是英文教材看得一个头疼。

       这个阶段需要不断的通过题目来进行训练,最近在看NOIP的赛题,看了一遍发现我在大学的时候这些算法题目我几乎都背过,都过了十多年还是记得他的解法和思路。

        学习这个阶段的同学如果数学比较好,学习久很快,并且和语言无关,以后切换到任何的开发语言都能使用。

        可以适当的学习一些STL中的容器(如向量、列表、映射)和算法(如排序、查找)。

3.第二阶段:面向对象

        上面阶段过了,这个阶段就好多了,但是还是需要老师的指导,因为在理解上需要有人帮你指正,但是我们学习面向对象的时候也很糊涂,因为从C直接转的C++,观念上不能转变过来。但是只要理解了也很好办了。这个阶段也需要背诵(大学刚毕业时面试官很喜欢面试这个基础知识),不过这个阶段我们可以通过代码的运行结果辅助记忆。

        当然在这阶段也需要学习一些调试的技巧。

这个阶段的知识点包含以下内容:

  • 类和对象
  • 封装、继承、多态
  • 构造函数和析构函数
  • 成员函数和数据成员
  • 友元函数和友元类

4. 第四阶段:项目练习

        上面都学完了就差不多可以看是做一些项目了,做项目是学习最快的路径,他会帮你巩固所学的知识,如果大学可以找一些自己感兴趣的项目来做,比如我喜欢游戏,大学时候我就做了好几款游戏。

        刚开始我们可以照猫画虎,购买一些学习视频跟着做一个小程序就好了,跟着老师一步一步的做项目,这种视频其实也不太好找他需要一个连贯的教学才行,当然这个时候有一个老师在旁边能帮助解决一些问题就很好,比如对新手来说经常出现内存异常是一件很头疼的事。

        做项目和自己做练习的小demo还是有很大的区别的,需要考虑到版本控制、代码风格、异常处理、代码优化等内容。

5. 第五阶段:出师

       跟着老师做了三四个项目几乎就出师了。然后可以自己尝试做一些自己想做的项目。学习一些新的框架等。

10-11 17:32