初一学好英语的方法c++的方法

原 价:¥15.80 希赛币
优惠价:¥12.64 希赛币
阅读次数:2317次
关注希赛微信
接听时间:工作日00:00-24:00(仅收市话费)
&&|&&关于希赛&&|&&工作机会&&|&&服务协议&&|&&免责声明&&|&&联系希赛&&|&&网站地图&&&&&&&&希赛网&&版权所有&&&&&&&&&C++ 程序员入门需要多久,怎样才能学好?
按时间排序
如果没什么基础,先从C开始入门吧。C++语言本身包含的东西很多很杂,对初学者来说不是太好上手。C语言出现年代更早且C++设计的时候就是要在C上添加面向对象支持。C语言的语法规范大致上是C++的一个子集,语法简单,没有C++的各种让人困惑的高级特性,学起来相对简单直接。我是这个专业的,,我Q,欢迎交流
程序员这个行业都比较务实,比较谦虚,大牛也不敢说自己牛,都说才入门,所以路漫漫,你就自己体会吧
初学屁嘛不会的时候,手拿一本c++ primer,炕次炕次用了两个月。当时觉得自己蛮OK的,肯定是入门了啊!现在看当时,就是 too young,too simple,sometimes naive,现在撸boost也能炕次炕次撸下来,勉强算是入门了吧,回首一望,两年了..除了多学多练多看,我想没什么好办法..
已有帐号?
无法登录?
社交帐号登录二次元同好交流新大陆
扫码下载App
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
我无法是你,我无法是他,我无法不是我自己!
我不是RMB,没法让所有人都喜欢。
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
&& &初学者。0.引言&  & 本文适用于C++初学者。&  & 如果您还是作为C++的初学者或者是“学过几年C++”却不得要领,您是否知道,您也存在跑偏了的可能呢? & 根据student.csdn.net社区中的一些言论,指出C++初学者陷入的误区,并试图分享一些如何学好C++的一些想法。 && 本文特别以论文的形式出现,但这仅是形式上,本文缺少论文存在的一些先决条件,可划分为杂文类中。&&1. 社区人口的分类 &   我把咱们C/C++社区人口分为以下几类:&&  0-1. 隐身高手&   0-2. 不知道在说什么,无法分类的&   0-3. 老师,辅导员&   0-4. 快乐的C++爱好者&&  1-1. 不快乐的C++爱好者及伪快乐者&&   1-1-1. 为学业而挣扎的同学&&   1-1-2. 不知道如何入门的同学&&   1-2-3. 不知道如何时提高的同学&&   1-2-4. 陷入学习误区而挣扎的同学&&   1-2-5. "乐于"陷入学习误区的同学&&&&&   本文主要是写给后一大类的人。2. 分享一些我学习C++(编程技术)的想法&   先分享一些通用的包括但不限于C++的,再分享一些仅与C++相关的。& & 1) 培养兴趣&   爱因斯坦说“兴趣是最好的老师”。有些人是天生会对某一事物产生兴趣(一见钟情),有些是后天慢慢好感并产生兴趣(先结婚后恋爱,像老一代人),有些是则是指腹为婚,但却也终生幸福的人。& & 但是,如果您是对C++(或编程技术)实在没有兴趣,当初报考专业也是家长老师逼迫的。那我强烈建议 &该转学转学,该退学退学,该改行改行,及早选择自己的新生活吧。&& &&&  2) 打好基础(尤其是在校的同学)&   学好一门课需要重视它的先导学科。学习有捷径,那就是先打好基础。张无忌之所以能快速学习,是因为他已炼成神功了。下面列出一些基础的知识:& & a) 语文&   b) 英语&   c) 基础数学&   d) 离散数学,组合数学&   e) 数据结构及算法&   f) 操作系统&&&&   语文,看似很远的课本了,其实,在工作中离我们很近。写报告、作总结、开会发言、说服客户掏腰包,说服老板涨工资。就连论坛发贴也需要语文功底。& & 英语,尽量不要向网友求助:“有没有xxx的中文版”。仔细看几本英文原著,差不多编程的英文书都能看个大概了。 3 如何学C++&  C++是一门期很古老又充满生机的编程言语。如果您想成为真正的编程高手并以技术工程师为职业创造财富,那选择C++是正确的。如果我们对以上断言达成共识之后,那就请接着向下看。&  下面的内容分为两大部分,分别讲述如何入门和如何提高。&  1) 如何入门&& &轻松上阵:学习c++,并不需要特别的先导知识。我认为,只要能理解顺序,条件和重复,那就能学编程。有论证结论:任何复杂的程序,都是由顺序执行、条件判断和重复执行组成的。&& &学C++,不一定非要先学C。&& &入门选择正确门口:&&& &C++是抽象名词,它不会单独存在。它会与以下名称共同存在:&& &   a) 程序&&  && b) 文件&&&  & c) 可执行文件&&&  & d) 代码&   && e) 源代码&&  && f) 编译器&&  && h) 链接器&   && i) 调式器&&&  && j) 集成开发环境(IDE,即把编译器,链接器,调试器合在一起的东西)&&  && k) 命令行&& &另外,还有一大堆影响初学者其它的名词,如 VC, gcc, mfc, windows等等。&& &认为C++入门难,可能是没有理想上述名称的关系,其实也不要紧,了解上述术语也容易。 下面直接给出入门的方法建议(按顺序)。&&& & 建议1: 作好准备,建立好C++的开发环境,选择一个单纯的命令行开发环境。&& & &较容易得到的有VC开发环境和linux下的gnu开发环境,也可以在windows下用cygwin,这是一个让不熟悉linux开发环境的初学者也可以在windows下使用像linux一样的开发工具。不建议直接使用Visual Studio 或eclips这样的集成开发环境。&& && IDE有很多优点,但是,对于初学者来说,它的缺少也很明显。大而全的集成开发环境会让初学者面临更多的名称,从而更烦恼。&& & 建议2: 先学会C++编程的过程,步骤可以列举如下:&& & &  a) 理解编程的目标(需求)&& &&   b) 编写 make file文件&&& &&   c) 编写程序&& &  & d) 编译,链接程序&&  & & e) 检查是否有编译、链接错误,如果有错转到c),直到没有错误&& &&   f) 调试程序,检查程序输出结果是否符合预期要求,如果有错,转到c),直到没有错误。&   && 无论是选择vc的编译器,还是linux(cygwin下)用g++编译器,上述过程都能通用。入门C++编程,可以写编译一个最简单的程序,演练上述过程。&& & 建议3: 理解C++包括的学习内容&&&  & C++是一个内容并不多的编程语言,可以分为四大块内容&& &&  第一部分: C++基础部分,它包括C++的一些标识符,语句,函数,参数。&& &&  第二部分: C++面向对象部分,它包括用C++设计新的类型,通过面向象的思想来编写程序。&& &   第三部分: C++的泛型编程,它包括用C++设计一些模板,通过泛型或元编程的思想来写程序。&&&  & 第四部分: C++的第三方可复用的库。也包括开发人员自己写的库。学习如何使用第三方或自己写的可复用的库。&&&   作为初学者,可以先学第一,第二,第四部分。2) 如何提高C++编程技能&&   建议4: 遵守规范和遵循“原则”&& & &   如: 编码规范和编码规范的原则;&& & & &  & & 编程规范和编程原则;&& & & &&   & 设计规范和设计原则。&&&   举例来说,前阵子有网友探讨编码规范和样式,这是一个很好的现象。但遗憾的是没给出编码规范的原则。我这里简单的引述一个较好的原则(注:原则也会不停的进化的)。&&&   a) 简单原则,清晰易读。&& &  b) 最小混淆原则,代码样式一致&&&   c) 最小干扰原则,修改方便。  如果编码规范中的要求满足以上原则,那就是好的规范。(注:匈牙利样式的风格与原则冲突较大,所以它仅存于MFC中)&&   再举个编程原则:比如,设计函数尽量是唯一的返回点; &函数尽量完成一个仅一个完整的功能等。&  & 设计原则:开闭原则,替换原则,依赖倒转原则等等。&& &&& &建议5: 识别优秀的代码和发臭的代码&&&  优秀的代码长什么样呢?我认为有下面的特性,以优先顺序列序&&&  a) 易读易懂的&&   b) 正确且高效的&&   c) 易复用的&&&  d) 易移植的&&&  稍作说明:代码主要还是用来被阅读的,其实是写代码和让机器执行,如果代码很难读懂,它的价值就会打折扣;第二点不必说明,错误的代码什么价值也谈不上;易复用和易移植是体现代码价值很重要的指标了。&& 发臭的代码又长什么样呢?这个可以参考“重构”相关的知识,也可以留作大家讨论。&& &&& &建议6: 重视代码的价值--复用层次&&   代码的复用度越高,它的价值就越大,代码作者就更应该获得更多财富和尊敬。代码复用的层次既是软件工程发展的过程,也是学习者学习的路线。&&&  那代码复用有哪些层次呢?下面是我的规纳:&&   第一层次:代码级复用:也就是最低层次代码复用,是源代码级的拷贝粘贴。初学者也不学就会的技术;&&&  第二层次:函数级复用:子函数的出现,人们可以通过函数来复用代码,并发展成为库函数。像c语言中的 printf(),scanf()这样的函数就放在库中,可以被开发人员链接到自己的程序中。有时候初学者还以为这些函数是C语言中的一部分呢。&  & 第三层次:类库级复用:面向对象的思想曾经是被人们寄予了厚望,希望它能帮助人们脱离软件工程危机(软件工程的危机中的程序员被比喻成陷入焦泥潭的猛兽,越挣扎陷是越深)。大家熟悉的基础部分的MFC,boost都可以算作是基于类库的复用。我们也可以把COM,模板算到这一层次。&&&  第四层次:基于模式的复用:一个伟大的建筑工程师给软件开发人员提供了灵感,发现&建软件和修房子一样,离不开那些相同或相似的套路。于是,为了复用以前的成功案例,总 结出一些模式。模式还和面向对象技术结合起来了,专门研究具体的问题可以分到什么类别中, 并直接给出对象模型。设计模式已经应用了十多年了,可惜很多初学者还不重视它。& & 第五层次:基于模式的框架复用: 理想中的面向对象是想把对象当作可复用的库像积木一样生成, 这样开发软件就像搭积木一样快乐。但是,很快就发现,让积木结合的胶水比积木还更难控制,程序员要写大量的胶水代码,并且反复的重写。解决这个问题就是应用框架。框架的成功示例很多了。像ACE,MFC就是成功的框架。&   第六层次:中间件级的复用: 不同的应用领域以及不同的基础环境,却有着相同或相似的中间层,图形表示就是一个两头大中间小的沙漏形。中间件就是研究“沙漏”腰。中间件是一个很迷人的领域。&  第七层次:面向服务的复用?基于模型的程序自动生成?认识会不断的提高,我想很快会有更迷人的领域。&&  建议7: 重视C++的应用&&  C++不是孤离的,如果离开应用学C++会容易走偏。建议学习了C++基础之后,多学习以下内容(可选,排名不会先后):& & a) 操作系统(linux,windows),熟悉多线程,linux的体系,windows的内核对象&   b) 数据库&   c) 图形&   d) 网络&   e) 你的专业和兴趣的其它领域&&&&   建议8: 重视C++相关的工具& & a) 调试器& & b) 测试工具或框架,如cppunit&&&&   建议9: 重视团队&&  个人英雄时代过了,现在的项目离不开不同角色的开发人员协同工作。让专业的人做专业的事,所以,选择一个自己感兴趣的点,深入研究,做到最好。&&&&&  建议10: 多读别人的代码并自我积累&&  不必说为什么。&&&&4. 结束语&& 本文的观点不求全部被认同,欢迎来邮件与我交流心得,共同学习提高。
阅读(4756)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_081070',
blogTitle:'如何学好C++——给初学者的建议',
blogAbstract:'转自:http://student.csdn.net/space.php?uid=41561&do=blog&id=1449摘要:&& &根据社区中一些言论的思索,发现一些问题,产生一些想法。并将这些想法分享给C++&& &初学者。0.引言&  & 本文适用于C++初学者。&  & 如果您还是作为C++的初学者或者是“学过几年C++”却不得要领,您是否知道,您也存在跑偏了的可能呢? & 根据student.csdn.net社区中的一些言论,指出C++初学者陷入的误区,并试图分享一些如何学好C++的一些想法。 && 本文特别以论文的形式出现,但这仅是形式上,本文缺少论文存在的一些先决条件,可划分为杂文类中。&&',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:5,
publishTime:5,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:2,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'我无法是你,我无法是他,我无法不是我自己!\n\n我不是RMB,没法让所有人都喜欢。',
hmcon:'0',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}上一篇:下一篇:
即时交流技术方式
提示:如果失败,请多刷新几次二维码页面
群号:(自由讨论编程技术问题)
群号:(根据账号名在群中找到作者咨询)
群号: (Windows零基础课程学习者讨论)微信公众号:cpp_coder(关注后可接收每天推送的最新精选文章)与作者聊天:
常用查询:
, Copyright (C) , , All Rights Reserved,& C++学习攻略--怎样学好C++语言
C++学习攻略--怎样学好C++语言
& & & &之前发过一篇,本文来讲讲怎样学好。我把我个人的一些学习经验写在这里,希望对大家有用。首先,因为如何学好C语言中谈到了算法和系统,所以这里就只谈C++语言。& & & &C++是最难的语言。& & & &这个世界上最难的编程语言可能非C++莫属了。你千万不要以为几天就可以学好C++,C++的学习曲线是相当BT的,你可以看看这篇文章。C++是一门很自由的语言,自由到了有点BT和恐怖的地步。我甚至认为C++并不是一门成熟的编程语言,因为太容易犯错了。所以,你一定要在一开始就要有很小心谨慎的态度,并把C++当成一种难以训服的猛兽来看待。& & & &多问&为什么要这样&的问题。& & & &学习C++一定要多问几个&为什么是这样&,&凭什么要这样&的问题。比如:很多人知道C++有拷贝构造函数和初始化列表,但你真的知道为什么要有拷贝构造函数?为什么要有初始化列表吗?为什么要有template,为什么要有RTTI,为什么不是别的呢?难道就是为了让一门语言变得Cool一些吗?完全不是这样的,C++中的任何一个feature都有些实实在在的原因,你一定要去了解为什么要把C++设计成这样的原因,你才能学好C++。有空看看《C++演化和设计》一书。& & & &看书,大量的C++书。& & & &你可以按如下先后顺序阅读(下面这些书,我花了大约4-5年的时间,今天我还在随时温习)& & & &,这本初级读本可能让会你啃得很痛苦,所有的语言的特性和为什么都在里面了,好好读读。当然由C++之父写的《C++程序设计语言》也不错。两本看一本就好了(我看的是前者)。& & & &了解C++的语法仅仅是万里长征的第一步,你还需要看看和这两本书并不厚,但我从02年就一直看到现在,每次读我都有新的体会,这两本书太经典了。如果你对C语言不熟,这两本书会让你回去补C语言的课。& & & &Think in C++同样是另一本经典之极的书,学c++必读,但是中文版的翻译的很不好,所以还是去读英文版的吧。& & & &同样非常值得一读,这里教的不是编程,而是思考的方法,这是相当珍贵的。& & & &《Exceptional C++》和《More Exceptional C++》让你看看各种问题的解决方法和一些常见的经典错误。& & & &《Advanced C++》和《Modern C++》可以让你知道C++各种神奇的用法。& & & &是把C++实践到了极致的东西。很强大。STL&&神一样的模板库(容器,算法和函数对象),不得不服。& & & &让你了解编译器下的C++是什么样的,让你了解C++的性能并不差。这个对于C++的程序员太关键了。我以前写过的《C++虚函数表解析》还有《C++对象内存布局》属于这个范畴。& & & &和语言做对比。& & & &我个人以为Java对C++这个并不成熟的语言做了很多调整,规范和限制。所以,对比一下Java和C++,想一想,为什么一些东西在C++中可以做,但在Java中却不行。比如:Java的异常是必需要catch的,不然就会编译不通过。为什么Java不提供操作符重载?为什么Java会引入接口来做多重继承?为什么Java没有像C++那样的I/O字符流?为什么Java不支持指针?为什么Java可以做到垃圾回收?等等。Java体现着很多面向对象设计的东西,学习Java有助于你学会怎么更好地使用C++来编程。& & & &面向对象设计 。& & & &虽然面向对象可能是个骗局。但是我觉得面向对象设计中的一些实践非常的不错,比如,单一原则,依赖倒置原则,等等,都非常地经典。《设计模式》必需一读,《面向对象的分析和设计》可以一读。但不可以设计模式为中心来编程,而应该是用设计模式来解藕。& & & &类库学习。& & & &看看是怎么封装Windows API的,看看ACE是怎么面向对象的,看看boost是怎么玩面向对象的,看看CPPUnit又是怎么设计的。当然,Java的JDK中有太多的设计模式,可以参考。
除非特别注明,文章均为原创
转载请标明本文地址:
作者:鸡啄米
&&( 22:2:13)&&( 9:2:13)&&( 16:53:30)&&( 12:54:35)&&( 10:11:7)&&( 9:23:12)&&( 13:16:12)&&( 20:51:16)&&( 20:58:14)&&( 21:54:39)
博主理论知识不错,不知道能不能交换友链
完全随机文章

我要回帖

更多关于 初一学好英语的方法 的文章

 

随机推荐