龙骑士传开服表:入门学习C++ - 日志 - 邱泳天 - 血与荣誉SNS平台 - Powered by U...

来源:百度文库 编辑:九乡新闻网 时间:2024/04/26 18:03:21
门学习C++已有 65 次阅读  2009-05-10 22:40   标签:  LINUX 单就学习C++语言而言,建议初学者还是不要用IDE。原因很简单,IDE牵引性太强了。
比如VC吧,上来就建立工程,然后就是一大堆向导选项,最后一出来就是搭建好的一个框架,然后,编。。。。
我当年学习VC,第一次下来,当场晕厥,我编啥哦?!!!
一个程序,总要有个入口,出口,用VC的MFC框架,初学者连入口都找不到,我连初始化代码在哪运行都搞不懂,怎么编?
这种情况持续了两三年,最后,看了侯老师的深入浅出,才算彻底搞懂了MFC的框架结构,但侯老师也是通过把MFC拆了,一点点展示给读者看,我才看懂的。
后来发现,VC和MFC是一套工程系统,它设计的前提是一个工程设计人员,在很熟练VC的情况下,可以迅速用它搭建应用程序平台,但对于初学者,很不友好。
反过来,我从VC转到gcc,反而容易,很简单,都是main开始,一看就明白,然后,C和C++该写啥就写啥,反正专心实现自己的功能,实现玩,做个makefile,编译就ok。
顺便说一句,makefile我只学了两个小时就会了,比MFC的两年多,节约了一点时间。呵呵。
事实上,我真正开始写的第一个windows工程,其实都还是WinMain的,当时确实搞不懂MFC的框架体系,而且,误导非常严重,老是把不相干的东西弄到一起,要么一起学会,要么都不会。
大家可能还记得我发的帖子《我学习MFC的一些疑惑》,其实这些都是当年我自己晕头的地方,直到很多年以后,我通过WinMain和gcc,彻底弄懂了线程、窗口等不同的运行机制,才发现被MFC忽悠了。这些东西根本没有关系。原来玩Socket,不需要一定用类,原来玩线程,也不需要用类,原来玩窗口,还是不需要用类,我晕。。。。
命令行方式,看似简陋,但是它能让程序员专心于自己的事物,不用学完C++之后,为了学习使用VC,还要学一大堆Windows系统相关的开发,这些东东,和系统绑定性太强,其实通用性不高的,gcc就用不到窗口开发的内容。Linux的XWindows有人家自己的标准。
这可能也是微软的绑定策略,其实微软并不喜欢有太多跨平台的C++程序员,因为这对于他卖Windows系统没有帮助,所以微软所有的开发类文档,必然先提Windows,再提C++标准,好像只有Windows平台才能开发C++软件一样,其实是典型的商业误导和欺骗,大家别被忽悠了。
顺便说一句,很多时候,C++实现工程项目,和Windows一点关系都没有,也只有UI相关的部分才会用到Windows界面开发,在工程中,我们团队里最多只有1~2个人负责UI,其他的人,写的都是内部功能代码,用printf调试,没MFC什么事儿。
说到printf,不得不说,VC有点球莫名堂,所有的Windows程序,没有控制台,printf被屏蔽了,很多初学者当场又晕了,要知道,大家的第一个程序都是printf("hello world!\n");
这里大家可能要说了,肖老师不是C++程序员,printf是C的,C++要用cout,OK,OK,就cout,Windows程序一样没戏,还是输不出来。程序员连个基本的输出手段都没有,要想打印一句话到窗口上,我粗略算过,WinMain大概需要86句话启动一个窗口,MFC就不敢算了,太多了,巨无霸的一个框架。
至于吗?给人的感觉,我们本来想喝杯矿泉水,结果被微软强行灌了一口二锅头。
微软这个习惯很不好,他以不惜得罪所有程序员的代价,来强行推广它的windows程序开发,其实是很不厚道的行为。
嗯,再说调试,VC的IDE调试还是很方便的,可以跨线程单步跟踪,不过,实际工程中,稍微涉及到一点复杂的计算,和性能沾点边的,单步跟踪基本都无效。为啥,我这边才走一步,那边别的线程已经几百个报文和操作过去了,单步跟踪和实际运行,看到的根本就是两码事,所以高性能程序debug,一般都是用printf大法,把信息打出来分析。呵呵,问题又出来了:printf哪去了?
有IDE的VC,其实已经不能算一个C++的学习和开发环境,而是一个专门为微软开发Windows程序的开发工具而已。
呵呵,这也是微软的爱好,喜欢弓虽女干标准。C++被改成VC,html被改成IE html,http被改成http 4 IIS,java不能动,就搞个.net平台来抗衡。
这当然没有错,商人嘛,赚钱为第一要务,不过,我们程序员还要吃饭呢,如果哪天微软倒了,那些只会开发4 Win应用的兄弟们找谁吃饭去?
就好比Borland死掉了,所有的Dephi和C++Builder的高手们心里异常失落一样。
学技术,尽量学习通用标准,不要太偏向某个公司了,不要把自己的脑袋绑到别人的裤腰带上,这是我这么多年的开发经验。
我一直研究跨平台编程,就是有这个担心,如果哪天微软死了,我好歹还有Linux,如果哪天PC机死了,我好歹还可以玩嵌入式,呵呵,死道友不死贫道,只要我不死就好了。
所以,我觉得,初学者,学习,最好学习最标准的东东,最好不要依赖谁,养成独立自主的开发习惯,万事,有成熟的算法,代码,就用,没有,就自己做,这样的程序员,生命力是最强悍的。

这里再多说一点点,很多人学Java,学PHP,其实都可以,不过,我建议最好还是学习一点C和C++。为啥,C和C++深入,能帮你理解很多脚本语言不能理解的东东,你可以亲手控制线程的生死,可以亲眼看到时间片的切换,内存的分配,而且,这些都是你可以掌控的。
我其实以前很喜欢使用VB的,简单嘛,画来画去,一个程序就画出来了,所有的关键算法,都是控件完成的,我只管组织。做个小东西来的快。
但后来,我就问自己一个问题,如果有一天,我做个项目,但是,我找不到那个控件怎么办?我吓出一身冷汗,结果是我也不会做,只有被老板炒掉。后来我就发现,不担心被炒掉的,其实是做控件的人,是那些玩C和C++的人,所以,我就和自己说,要学C++。
其实想必做Java和PHP的朋友应该有这种感觉,自己的程序的优劣,受制于人,一个PHP写的web服务器,apache能有多大效率,自己的服务器极限就只有多大效率,一点办法也没有。而我们做C和C++的程序员,则经常喜欢替换掉apache内部一个什么模块,把它的效率提升一点看看。
不是说Java和PHP不好,这些语言能经历市场的证明,表示有其强悍的生命力的,尤其是Java虽然是Sun一家的,但其本身的标准已经脱离了这家公司的控制,实现了跨平台通用,这就注定了Java将会是一门伟大的语言。目前它的市场比C和C++都大。
不过我这里仅仅是建议一下,其他语言的程序员,在有空的时候,建议看一点C和C++,尤其是你们不太熟悉的指针、内存,底层等算法,有了这些知识,你们写其他语言,也会彪悍许多的。

呵呵,说了这么多,好像有点跑题了。
不过,我想我这里能够给大家传递一个信息,不管什么语言,尽量学习标准的,基础的东东,不要去依赖太多别人的成果,那么自己的问题解决能力就会越来越强。另外,基础和标准学好了,其实用C++开发还是用JAVA、PHP开发,其实写出来的程序,应该差别不大。 转自CSDN。。。 不过俺认为C++在LINUX下做 虽然不错 不过上手情况会更难。特别是不懂LINUX SHELL和命令行的朋友。他们可能连 如何进入带命令的编辑器都不懂。 新手,不过学习C++和编程的 至少对计算机基础和软件基础熟悉。系统嵌入式和操作系统没有什么关系。所以做底层和嵌入式 他说的对 。如果你只做WINDOWS平台软件 用IDE学习C++是很正确的。当你学习了因为 VC++2008 你要熟悉IDE就要很久。先下手为强。但是这样,你要知道,你只能作一个程序员。 SO,建议有一定基础 熟悉LINUX 的MAKE CD LS 等等命令后 才进行C++ LINUX 编程 会有更好的效果!
入门学习C++ - 日志 - 邱泳天 - 血与荣誉SNS平台 - Powered by U... 深夜上网的女人 - 日志 - 孙夕芳 - loving365 - Powered by U... 【牛头NLP入门课程03】:NLP的基本精神及历史 - Powered By NLPU.C... U风水基础学习资料更新|【 风水堪舆 】-周易天地 - Powered by phpwind 建立渠道销售的重要性 - 日志 - 范家豪 - 教辅人俱乐部 - Powered by U... 你是微波炉思维吗 - 日志 - ruitony - 口语家园 - Powered by U... 植树节的英语说法 - 日志 - ruitony - 口语家园 - Powered by U... 日本地震之周末综述 - 日志 - wwchxql - 港股通 - Powered by U... 责任追究----刑不上大夫 - 日志 - 股风机 - 港股通 - Powered by U... 一名HR从业者的成长感悟 - 日志 - 赵智通 - 我的空间 - Powered by U... 筹码集中度公式 - 日志 - wen98 - 股海家园 - Powered by U... 自用的筹码集中度公式 - 日志 - wen98 - 股海家园 - Powered by U... 2010注会考试心得,考友交流与CPA入门 - Powered by phpwind 学习英语的5个好习惯 - 日志 - ruitony - 口语家园 - Powered by... 学习量柱,擒涨停的要诀! - 日志 - 深远蓝蓝 - 股海家园 - Powered by ... 135战法学习与交流版 - 知行合一股校论坛 - Powered by... 135均线战法 - 135战法学习与交流版 - 知行合一股校论坛 - Powered by... 几个模型(ZT) - 开发与设计&学习交流 - 学生之家论坛 - Powered by D... U盘启动系统 - 公共文摘、知识拾零、文章笔记分享与推荐平台 - www.440990.c... 【其实,你放得下ta】 - 日志 - 山豆依然 - 木虫之家 - Powered by U... 中国收藏安全:概念与问题 - 日志 - 马健 - 雅昌博客频道 - Powered by ... 理论的社会性与个性 - rrhhwc的日志 - 光明社区 - Powered by Dis... 理论的正确与错误 - rrhhwc的日志 - 光明社区 - Powered by Disc... 理论的概念与范畴 - rrhhwc的日志 - 光明社区 - Powered by Disc...