时间:2022-10-09 17:56:50 | 浏览:315
学习C++,为什么有很多C++大牛,有各自不同的学习方式,这个人这么学,代码这么写,那个人那么学,代码那样写,到底谁的正确的?我告诉你:没有谁对谁错,因为他们的工作、学习、方向、环境造就了他们的学习方式。
很多刚出道的,慕名来学C++,但我想说一句,假如你想学C++,请拿出你的巨大的毅力和精力来学,不做好这种准备,不建议学习并精通C++。
这里只说C++,不涉及操作系统、计算机原理、网络通信、加密解密等其它计算机学科的知识,虽然他们是相辅相成的,但是我尽量不涉及这些知识。当你学完之后,你或许可以重新学一遍我上面所提的一些学科知识。当然,你不需要太过深入,把你大学里面的学会了理解了就可以了。
那么下面重点说说,如何学习C++:
当然首先无外乎重要的一点,一本C++语法方面的书,从头到尾看一遍,看的过程,多敲样例代码,书后习题一定要做,具体重点看那些了,我建议,看到类那里,把继承看完,全部弄懂基本就可以了。一定要多敲代码,多动手,一定要弄懂指针,不懂的话后面学习让你如坠云里雾里,所以指针一定要直到弄懂为止。
学习完以后,你的C++基本功底差不多了,那么如何巩固和提高你的基本功了,这个时候,你要重点专研C++的多态,虚函数、虚基类等一些容易搞混的东西,这些东西,你几个月不用,基本上就忘的差不多了。笔者是一个C/C++出身的程序员,学习编程有什么学习问题或者关于C/C++学习的路线的话可以私信我交流。
学习完上面之后,这个时候,你要开始学习STL,这个可以算是进阶了。当然,学习STL之前,你必须要有一点点数据结构的知识,假设你大学考试数据结构考试不是抄的过了,你就可以开始学习STL了,你需要弄懂vector、queue、deque、priority-queue、list、stack、map、set、multiset、multimap等,需要了解迭代器、算法、容器的概念以及使用方法。学习到什么程度就可以了呢,这个不好说,得看各人,自己把握。
然后,学习数据结构吧。用C++实现你大学数据结构课本上所有的知识点(栈、队列、树、图、查找排序算法等),当然,实现完之后,你需要将这些实现的代码记录下来,以备以后工作应聘等不时之需。
以上学完了,下一阶段该怎么学了,这个阶段很重要,是衔接理论与现实应用的衔接点,很多时候,C++如果不借助于其它方面的一些已经写好的库,一些很简单的任务C++都完成不了,比如说让你写一个windows的窗口应用程序,你用C++,就实现不了。因为C++的标准库,没有与GUI相关的东西,这个时候,我们需要借助于其他的一些库,比如,MFC,QT的库等,在这一个阶段,你需要学习如何使用IDE平台库或者系统平台的库,利用各种已经写好了现成的库,你只需要调用,就可以完成非常强大功能。这个时候,如果你挺聪明的,你或许可以用C++来写一些小游戏了,比如俄罗斯方块、贪食蛇等。
平台库我们用完了,但我们不局限于IDE或者系统函数库的调用与使用,我们要使用除此之外的其它第三方库,比如网络游戏那超级酷的3D效果,这个时候,比如opencv、PCL、opengl、directX等,具体怎么学,看你的工作学习所需了。
直到现在,我们一直从语言层面上来学习C++,这一次,我们要从俯瞰的角度来审视C++,我们要学习C++的开发模式,建议大家学习一下C++的开发方法,开发模式,二十几种的设计模式。
到了现在为止,你需要温故而知新,因为你前面很多细节都忘了。你可以报考一门中级软件工程师考试,用来让你的编程与所有学科的知识进行有效的糅合,系统化的学习计算机知识,让你对C++的理解和计算机的理解相辅相成,齐头并进。
学习完上面之后,C++我觉得你基本上算中上等水平了,可能很多的C++使用的人都停留在这个水平。不出意外,这个时候,你已经学会用C++走路了,以后的路,需要你自己走了,以后的进阶,你需要选择一个方向,比如通信、二维三维图像、3D大型网络游戏里面的某个重要的C++分支开发等(基本上是公司和你自己的定位来帮你选择方向),这个时候,需要的,大多是算法、算法优化等,我们发现C++的学习方式,就是先广度后深度。
本内容来源于@什么值得买APP,观点仅代表作者本人 |作者:玩牛牛创作立场声明:由玩牛牛原创,欢迎转载最近在某乎看到一篇文章,大意是海淀妈妈们已经嫌弃 Python 低级,准备让娃直接入门 C++。看得我这个写了 15 年代码的老码农心惊胆
数以百计的 C/C++ 替代品将会出现,但 C/C++ 将永远与我们同在!每个 CPU 都带有一种称为 ISA(指令集架构)汇编的电路语言。ISA 程序集是一种硬件语言,由基本数据操作、数学计算和结构化编程(即 jmp)的操作组成。但是,为
C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样
2022年8月22日,据IT桔子,数数科技于近日完成C+轮融资。本轮融资的投资方为GGV纪源资本,金额为1亿元。企查查信息显示,数数科技创立于2015年,是国内专业的游戏大数据分析服务商。数数科技以“让数据价值触手可及”为使命,聚焦游戏行业
记者 | 陈晓珍编辑 | 9月7日,猎聘发布的《短视频领域中高端人才招聘解析》(以下简称“报告”)显示,短视频领域新发职位的招聘年薪呈持续增长态势。2021年1-8月短视频新发职位平均招聘年薪为27.02万元,相比于2020年(21.05万
都2020年了,C++这一门编程语言已经奋斗在编程语言前线几十年了,一直都是备受推崇的一门编程语言!尤其是C++与C语言的相关性,让C/C++程序员成为业内程序员中的佼佼者。C语言一直都是大学计算机专业,乃至非计算机专业,必学的一门编程语言
C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应
大家好,我是柠檬哥,专注编程知识分享。欢迎关注@程序员柠檬橙,编程路上不迷路,最近很多同学私信柠檬哥,问到C++的应用方向和工作方向,这就安排。C++和C语言相比于Java和Python,可以说是比较底层的语言。不像Java有GC,在C++
一、强类型和弱类型语言:C、 C++、 Java 、Python都是强类型的语言。PHP是弱类型的语言。强类型语言是一种强制类型定义的语言,即一旦某一个变量被定义类型,如果不经强制转换,那么它永远就是该数据类型。而弱类型语言是一种弱类型定义
首先,我们先普及一下编程语言的基础知识。用任何编程语言来开发程序,都是为了让计算机干活,比如编写一篇文章,下载一首MP3等,而计算机干活的CPU只认识机器的指令,所以,尽管不同的编程语言差异极大,最后都得“翻译”成CPU可以执行的机器指令。