为什么有人说C++是最难学的编程语言? (4个回答)

从事嵌入式开发多年,有三种语言玩的比较多C/C++ java,从编程语言的难度来讲C++是最难得,而且也是最难入门的编程语言,很多编程老手都是这个结论,为什么C++是最难学的编程语言,虽然难学但还是很多编程老手喜欢研究它,更是很多架构师的最爱。

现在以个人的观点讲述为什么C++是最难的编程语言,其实在C++基础语法部门看不出这门编程语言有多难,难在泛型编程和面向对象的特性展示,几乎每个知识点都附带着很多细节点,而且更加要命的是C++语法规则还在不停的延伸,几乎长期玩C++都有一种通病总是觉得这门语言学不完,就连C++的创始人都说自己有时候都看不懂这门编程语言了,linux的创始人对于这门编程语言成见也非常大,有点故弄玄虚的感觉。

如果单纯从学校的理论角度去学习这门编程语言其实看不出有多难,因为基础语法的学习掺杂的东西就比较少,很多在学校学过这种语言的大学生觉得自己的基础应该还可以结果真正开始做项目的时候傻眼了,原来还有这么多自己不懂的语法知识,只靠那点皮毛根本解决不了问题,所以要想学好这门编程语言首先要做好充分的心理准备,起码几个月的时间在迷糊期度过。至于具备什么条件才能学好C++,这种没有定论很多大学生在学校自学了C++,还没毕业就通过网络途径找到工作了,所以编程语言的学习从来都不是固定的。

在网络上认识一个大学生,本身对编程很感兴趣,特别是对C++感兴趣,完全靠着一腔热血把这门语言给学好了,并且不断拓展知识面,有关C++的书籍研究了不下五本,并且借着这种势头还不断通过看书拓展自己编程基本功,还没毕业去找工作就成了抢手货,所以不要给自己设置界限,不一定非要参加培训通过自身的努力也一定可以。由于经常在网上写点东西,遇到一些大学生经常写技术文章,开始的时候不会写,后来坚持的时间长了越写越有感觉,再加上网络信息非常发达,有一些猎头或者技术高手在网络上发现有可塑的人才也会主动联系,所以很多大学生还没出校门就把自己的工作给搞定了,不要轻易否定自己。

在这里插入图片描述
其实做为一个学习者,有一个学习的氛围跟一个交流圈子特别重要这里我推荐一个C语言C++交流群1075673198,不管你是小白还是转行人士欢迎入驻,大家一起交流成长。

游戏开发,大数据和服务器方面开发,网络开发,嵌入式开发等,现在很多主流的客户端都是用C++完成的,安卓内核框架和谷歌浏览器绝大部分代码都是C++完成,不用担心这门编程语言不行了之类的鬼话,由于这门语言相对比较难入门起来相对费劲。

难也只是相对的,只要觉得感兴趣就去全力去学,学的时候不要考虑是不是能找到合适的工作,编程要能学好必须能下功夫,软件开发讲究的水到渠成,功夫到位了自然就能做项目了。

希望能帮到你。

从这个趣事就可以看出C++是非常难学的编程语言,在主流的高级生产级编程语言中可以说是最难学的编程语言了,从入门到精通最难的编程语言,从入门到放弃最简单的编程语言,可以说是名符其实。

C++语言是C的超集,1982年,美国尔实验室(AT&T公司)Bjarne Stroustrup博士在C语言的基础上引入并扩充了面向对象的概念,从此C++编程语言诞生,面向对象的到来、STL标准库的诞生,以及微软等大公司的支持,让C++逐渐流行起来。但是C++从一开始就是一门复杂的编程语言。

从通用性上来讲,C++不局限于一个领域或者少数领域,而且没有明显的倾向性,比如PHP最擅长的就是web开发,Java最擅长的就是复杂业务逻辑处理,C#做桌面开发非常方便,而C语言最擅长的就是系统级别的开发,而Python则是最主要的人工智能研究语言。但是C++不一样,没有明确的倾向性,并且功能还非常强大。
在这里插入图片描述
其实做为一个学习者,有一个学习的氛围跟一个交流圈子特别重要这里我推荐一个C语言C++交流群1075673198,不管你是小白还是转行人士欢迎入驻,大家一起交流成长。

C++可以完成系统级的开发,垂直领域的特定应用开发,甚至在教学科研以及嵌入式等等领域都能够很好的完成,这就是最大的问题,那么注定每一个方面都要做得很好。

从多范式来讲,C++不是彻底的面向对象编程语言,也不是纯面向过程的编程语言,也不是标准的泛型编程语言,这玩意儿是多范式的。也就是反过来说,她即是面向过程编程语言,也是面向对象编程语言,还对泛型程序也有很好的支持。知道什么问题了吗?对的,就是她什么功能都很全!

所以其实C++之难学,难于上青天的关键在于C++太强大了,功能太多了。 这样一个通用型、多范式的编程语言,当然是非常难学。但是在很多领域,比如系统级开发,大型游戏开发等领域C++还有着巨大的优势,因为C++毕竟是仅次于C语言的运行效率的编程语言,何况它还支持面向对象。

题主的问题描述中四个“?” 我能回答两个半。由于本人是非专业人士,所以一下回答仅供参考。

这个问题我不确定。

在我看来既然C/C++能够“长盛不衰”这么多年,足以说明它们的价值。单凭这一点就足够说明问题的了。

不过虽然我不是很专业,但是我也知道不用的领域会更多的应用不同的语言,尤其是题主还是自学,那么除非你的目的性很明确——比如从事某个岗位的职业,否则还是应该从比较容易上手的、应用比较普遍的语言入手比较好。 所谓先上路,路上在慢慢想! 比如你完全可以先选择比较容易上手的Python。

能!

这个问题我能回答的原因是因为我家孩子9岁的时候开始学习的C/C++,我们学的比较慢一周也就是两次课(前大半年一周一次),纵然是如此,目前为止孩子基本上也已经把语法部分(即编程语言的本身)都学完了。 只要不是算法太复杂的问题,孩子大都是可以做出来的。 目前孩子正在开始学习各种算法。

我之所以说“能”是基于这近一年来孩子的表现以及二十年前我学C语言时候的一些经验总结出来的。

但是,我必须要说名两个问题:

1、能否学的好,完全取决于你的努力程度而不是“理论上的可能性”。

很简单的道理,当你看书学或者看视频学(网上资源跳多了)的时候,你仅仅是照着课程内容敲打一边代码就行了还是会做笔记、会找相关题目练习这两种学习的方式直接决定你后面的学习效果。 就我孩子的学习情况来看,孩子的掌握程度基本上取决于投入练习的时间长短(当然,还有动脑程度)。

2、语言仅仅是一个工具。

编程语言仅仅是一个工具而已,当你工作时候更多的是要用这个工具去解决具体的问题。举个最最容易理解的例子:学习数学、物理的时候各种公式的本身并不难理解,但是当你应用的时候就会发现“ 我去!这题怎么做? ”。同样的道理,语言你可以短时间内(两三个月足以达到入门级)学个七七八八, 但是当你真的想用这个东西来解决问题的时候,往往会发现无从下手,甚至连点思路都木有!

因为我和孩子学习C/C++是因为我们想试试参加一下NOIP,所以我们的经验有限,但是这些道理也是很多老师、朋友跟我分享过的,我觉得是有道理的。 比如我家孩子每节课听的都自认为没问题,但是一旦开始做题了,尤其是稍微复杂一些的问题时候,基本上就跪了!

老师、朋友们跟我说解决这个问题没有什么捷径可以走,就是多练、多读(读程序)、多想、多交流!

这个问题不难回答,但是我说不全,所以只能借助网络尽可能的把它主要能做的事情给你罗列一些:

C/C++主要用于操作系统软件底层开发比如开发操作系统,各种协议软件,硬件驱动,嵌入式,服务器,或者算法研究,游戏开发,还有各种图形处理,总之那里的性能需求和运行速度比较高的,那就用C/C++。可能这么说觉得太笼统了,我再直白点比如手机,飞机、动车、机器人、大数据、人工智能、仿真等等都能用的上!

无论你的规划、计划是如何,你都要先“出发”,只有在前进的路上你才会发现各种各样的问题,也才能更有针对性的解决。认真学、多练、多交流你一定行的。

最后给你讲一个我觉得还不错的案例: 我的一位超级远房的亲戚孩子,高中毕业啥也没考上,最后去了我们这里的一个还算老牌的计算机培训机构,学了2年多的编程,后来推荐工作之后认真努力的学、做,几年下来这孩子现在一年收入也是很不错的。 当然,这种事儿不具有“普遍性”,是否“成才”很大程度上还是要取决于个人的努力情况。如果你有这个毅力,那么就去做吧!

加油!

对于正在学习C/C++的同学来说,C语言可能不难,但是当自学C++的时候,总会出现各种问题,就像是一个恶性循环不懂所以不想看,关键是没有·一个由浅到深的过程,刚开始就让人无力,那怎么样从浅到深学习C++呢?

首先,C++面向对象式的编程对开发者隐藏了很多细节,而面向过程的思维方式是一下子不能适应这粗象的思维方式。先把C语言打扎实了,着手练习用C语言实现各种常见算法和各个课后习题,等到算法研究了些时候,慢慢的不再代码注意细节(细节已达到编码时随手可写出的程度)之后,再来看C++语言,顶多几天就能适应,完全可以像学C语言一样的容易,那时可深入学习C++。

学习C++可以从《C++编程思想》开始,学习基本语法和面向对象程序设计思想。然后如果有项目可以跟着项目学习,借鉴前辈的经验。如果没有项目则可以借鉴书籍,例如《深入浅出MFC》等,通过一段时间的演练,相信对抽象,封装,多态,继承等就会有较深的认识了。

接着可以接触下《C++ primer》,《Effective C++》,《More Effective C++》等书,借鉴大家的经验,修正自身的一些毛病和问题。再往后就可以了解下设计模式相关的一些书籍,然后在实践中靠自己多积累。

不必为C++的某个语法问题而慌乱,不必为不懂C++某项技术而迷茫,选择一个领域,选择一个范式,专注于C++的一个子集。在此过程中,努力去领悟C++编程的思想,一旦顿悟定将妙用无穷。

C++是广博的,它涵盖面如此之大,让它如何能简单。希望各位都能善待自己所学的C++

C++很多人学到后面都放弃了,但只要学过这门语言的人,编程意识都会比同一阶层的人来得更好一些。比如我就有看过java编程的人在内存这块完全没有任何意识的,但学过C++的人,或多或少会去留意一下有没有释放内存,是不是内存可以共用等等。

我从指针跟内存这两块来说说为什么C++很多人认为是最难的编程语言吧。C++用的人多,骂得人也多。学起来不容易,用起来出起问题来,也是不带含糊的,排查的时候那是更崩溃的。所以现在很多企业都不大愿意去碰C++,真的是对员工的技能要求比较高。

指针跟内存,基本上是分不开的两块,指针指向一块不被分配的内存地址时,天知道会怎么样,崩也不一定就崩在那一行,自己创建内存,释放内存,这个必要从一开始要耶刻到脑海里的习惯,不然只创建不释放,哪天程序挂得不知所措。

总之能用好C++的人,都是一个挺好习惯的人,细节的注意会比较好一些。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/45323.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自学编程的人,90%以上都会掉进这些坑,避开这些误区能提高N倍学习效率

前言 几乎每一个程序员都会走上那么一段自学的道路,尤其是在校生或进入工作岗位之后,技术的提升基本都靠自学,有的虽然是网上报班学习,但更多时候还是自己在学习,师傅引进门,修行靠个人。 有的人自学很快…

30岁开始学编程晚吗?

二哥,说出来不怕你笑话,我和你年纪差不多。之前是干别的,但有点编程的基础,最近想转行程序员,不知道晚不晚,你能不能给我一些建议,或者说有没有一些攻略可以参考。 这是上个月一个读者小郑私信我…

机械专业转行IT行业,成功自学Java上岸(分享转行使)

秋招转眼就结束了,将近一年的努力,总算给了自己一个比较满意的结果。写下这篇贴子记录自己的转行以及秋招经历。 其实在转行初期,就无数次幻想着秋招结束,然后写一篇长长的经验贴的那种满足感。下面我尽量把我知道的,…

该如何从教育行业转行做IT——我的真实经历给出的偏门答案

“我需要,最狂的风,和最静的海。”——顾城 本文是对想要入行IT,但是没时间没钱上IT培训班的小伙伴的一些小小的建议,我即将要说的是最近发生在我自己身上的事,这些可以成为“如何转行IT”的一个偏门的答案&#xff0…

编程行业未来趋势如何

随时互联网不断的发展,编程技术不断的优化、成熟,编程行业未来趋势如何一直是热议的话题。 未来数字化,虚拟化,数据化的方向,就是说精神上的追求会成为一大消费趋势,看现在人们使用手机,玩电脑的…

这样学编程,直接原地起飞啊!

大家好,我是二哥呀。 今天来给大家分享一些学习编程的心得,真的颠覆了我以前对学习编程的刻板印象,可以这么说,如果你恰好处在大学阶段,看到了这篇内容,OK,恭喜你,如果你能按照我说…

学好编程的 4 个秘诀

你好呀,我是沉默王二,一枚沉默但有趣又帅气的程序员(你听,耳边是不是响起了装逼的声音)。今天我来掏心掏肺地聊聊学好编程的 4 个秘诀,应该会对你产生一些微妙而又积极的影响。 闭上眼睛转个圈&#xff0c…

盘点关于程序员的10个有趣的段子

(1)程序员的读书历程:x 语言入门 —> x 语言应用实践 —> x 语言高阶编程 —> x 语言的科学与艺术 —> 编程之美 —> 编程之道 —> 编程之禅—> 颈椎病康复指南。 (2)程序员最讨厌的四件事&#…

Unity角色扮演游戏集合

Unity角色扮演游戏集合 Aurora Trail A new epic game where the perspective of the camera changes everything. Do not let your body parts get in the same view as a wall with the same color, or you’ll lose it! Puzzle your way through challenging and appealing…

html下拉 小狗,html会动的小狗狗源码

一个纯html和css结合构建的会动的狗狗,适合自己去慢慢研究的页面,前端程序员们适合收藏哦~这样对我们的html和css技术提升也有所帮助哦! html会动的小狗狗源码:dog @-webkit-keyframes head {0% {-webkit-transform: rotate(0); transform: rotate(0); } 6.66667% {-webkit…

如何写一首让人膜拜的代码情诗?

1、木有女票?先放上一段来自(潘*扬)的神奇代码,助你快速脱单: //快速脱单代码 private static final THE_ONE ; ResultSet peopleInfoSet China.getPeople(); //获取全国人民的信息 while(peopleInfoSet.next()) { Per…

Android访问权限大全

访问权限图 权限的目的是为了保护Android用户的隐私。Android应用程序必须请求允许访问敏感用户数据(如联系人和 SMS),以及某些系统特征(如摄像头和 Internet)。根据该特征,系统可以自动授予许可&#xff…

安卓Permission权限请求

AndroidPermission,权限自动请求示例(所需权限被关闭时,会自动请求) 权限请求源码:(将应用的Activity设为PermissionActivity的子类,即可自动请求所需权限) package com.sc.demo;im…

Android请求应用权限

文章目录 前言参考一、请求应用权限基本原则二、请求权限的流程(官网摘抄)三、请求权限编码1.允许系统管理权限请求代码2.自行管理权限请求代码 总结 前言 学习Android为什么需要动态申请危险权限 学会Android应用危险权限申请的方式 参考 Android官方…

Android提示用户获取相应手机权限

一,简介 Android 6.0 为了保护用户隐私,将一些权限的申请放在了应用运行的时候去申请, 比如以往的开发中,开发人员只需要将需要的权限在清单文件中配置即可,安装后用户可以在设置中的应用信息中看到:XX应用…

安卓手机权限总结安卓权限列表

1.android.permission.WRITE_USER_DICTIONARY允许应用程序向用户词典中写入新词 2.android.permission.WRITE_SYNC_SETTINGS写入Google在线同步设置 3.android.permission.WRITE_SOCIAL_STREAM读取用户的社交信息流 4.android.permission.WRITE_SMS允许程序写短信 5.androi…

手机特殊访问权限设置

前言 在使用手机过程中,权限设置比较重要,有一些特殊访问权限入口较为隐秘,例如电池优化权限,下面以华为鸿蒙系统为例,介绍如何设置特殊访问权限。 步骤 打开系统设置,进入应用和服务,进入权…

推荐几个优质的公众号!

点击上方“Python大本营”,选择“置顶公众号”Python大本营 IT人的职业提升平台技术之路就是漫长的打怪升级,不断学习前人的踩坑经验才能提升自己,切忌闭门造车。所谓独乐乐不如众乐乐,强烈推荐以下公众号,让你的生活…

微信公众号每日推送给女朋友的程序

微信公众日常推送保姆教程(node版) 1.先安装node环境(https://nodejs.org/en/) 安装过程就是:双击直接安装,不建议更改默认安装位置(C:\),中途也保持默认设置,一路 “Next” 即可。…

推荐几个优质 IT 公众号

为大家推荐几个优质公众号: 学习需要技能,更需要有好的领路人,关注几个优质公众号,帮助你在学习中科学有效的成长。 以下是特地给大家挑选了几个大佬的优质号,强烈推荐关注。 人工智能爱好者社区 专注人工智能、机器学…