有没有适合初学者的钢琴曲c++开源项目?

当前访客身份:游客 [
Quantity breeds Quality
:非常感谢楼主的共享,帮了很大忙!!!!
:不错,写得很详细。C++用户路过。
:那各种类型长度,例如int,long那不是都要对各种...
:引用来自“王爵”的评论 因为追求完美是需要付出...
:因为追求完美是需要付出代价的
:现在已经离不开互联网了,年轻的时候还没有资本谈...
:这中方法确实是可以解决,不过还是每次重启eclip...
:引用来自“缘飞情灭”的评论登录成功返回的数据包...
:重装回 win7吧 win8不好用。
:登录成功返回的数据包里面是什么内容
今日访问:13
昨日访问:152
本周访问:802
本月访问:2517
所有访问:102204
本贴给C++初学者一个学习参考
发表于3年前( 20:56)&&
阅读(166)&|&评论()
0人收藏此文章,
本贴给C++初学者一个学习参考:    C++难学吗?这个问题也是我初学C++的时候所困扰我的,我思考了很久。也看了网上很多人的争论, 面对C#和Java的诱惑, 特别是C++,MFC淘汰论的时候,我依然选择了学习C++这条路。MFC可能真的是落后了,但是它绝对没有被淘汰,有时间它还是某些方案的唯一的选择。我学C++的理由是(相对于C#和Java):   1、 学习C#的人和Java的人占程序员总数的百分之80以上,C++占百分之10左右,C,Flash等其它语言也占百分之10左右。这个数据是我自己统计出来的,可靠性在百分之90左右。学得人少,竞争对手就少,以后的薪水可能就会更高。这个少也只是相对来说。   2、 C++效率比C#和Java高,不受XXX框架和类库的限制   3、 C++写出来的代码安全性高,除了反汇编,你不可能看得到他的代码是什么样的,但是C#和java的源代码是可以逆向出来的。   4、 C++的功能强大,只要是操作系统上能跑的东西,它都能做出来,像PhotoShop、3DMax、Word、等大型,强悍的软件基本都是用C++写的,有些是用C写的   如操作系统、数据库等。   5、 C#和Java貌似还没出过什么牛B哄哄的软件。游戏基本也是用C++写的,好像只有传奇是用Delphi写的,不过现在Borland也倒闭了,Delphi也日落孙山了。C#和Java主要应用是在网站和一些对性能要求不高的但是又有很多逻辑的地方。如XXX管理系统,XXX进销存系统,XXX银行系统。这类软件对技术的要求不高,但是对逻辑的要求很高,这些市场是C#和Java的天下   以上的几条只是我稍微罗列下几条能够站得住脚的理由。   但是作为一名想要真正学东西的并从事软件这行的人,我觉得还是学习C++更有利于自己的成长。一个干了10年的C#和Java程序员和一个干了两三年的C#和Java程序员相比,并没有多大优势。但是一个干了10年的C++程序员和一个干两三年C++的程序员有天攘之别。也许有人会说,我又不想干程序员干一辈子。说实话,我也没想过干一辈子。但是既然选择了这个行业,我们就应该朝最好的方向发展,不能以我以后会XXX样,不会XXX样这个借口来搪塞自己的懒惰。谁也无法预知未来,但是我可以大胆的说,大部分程序员10年之后依然还是程序员,会有一部分人转行,一部分人升做管理了,就算是升做管理的人,大部分人还是程序员而已。只是更高级点。转行的那部分人我不讨论了,但是一个干了10年的C#或Java程序员没升转到管理或转行的话,跟干了两三年的人比不但没多少优势,反而会有劣势。至少在精力上比不过像我们这些刚毕业的人吧。   以上都是些废话,我还是谈谈我是怎么学习C++的吧。刚开始选软件这个专业的时候,是因为高三的时候看了一条新闻,说是我国的IT人才缺口好几十万,而这个缺口以每年百分之二十的速度增长,而且经常在网上看到XXX干IT行业,工资XXX的高。我一看,前途这么光明,遂从该行。但是进了大学一看,靠,这么难学。因为我是专科,专业是软件技术,这个专业在今年已经被我们学校取消了,原因不详。大一上半年,开了几门睡觉课,除了高数还学了点东西,其它课不是玩就是睡觉去了。下学期开了C语言和VB这两门程序课,很遗憾,这两门课学完之后啥东西也不知道,C语言连for循环是怎么回事都没弄明白,   只知道for(int i=0; i&10; i++)这行代码下面的大括号中的代码会执行10次。期末考试只考了44.5分,VB60来分,估计是老师放水了。大一算是学得相当的失败了。大一将完了的时候,发生了一件对我影响比较大的事情——哥我失恋了。NND,女朋友跟别人跑了。   周星驰经常在食神里吃着碗面对我说,真是失败,相当的失败。经过失恋的打击,我自己反思过很多东西。最后咬牙决定,两耳不闻窗外事,一心只读圣贤书。权衡了很久,最后决定学C++,决定是很好做的,但是执行起来却是相当的难。时间过得很快,大二开始了,我也有了自己的本本了。同学会基本都有了自己的电脑了。但是电脑男的当游戏机,女的当电视机。因为我的笔记本是显卡是集显,当哥我兴致勃勃的从商店里买了一张3块钱的盗版游戏碟《最高指挥官》,再又兴致勃勃的装在电脑里,最后兴致勃勃的双击游戏图标,电脑给我弹出个对话框说我的显卡太垃圾了。最后哥我用神来之手将那张盘活生生的变成了可吸入颗粒物。 大二上学期终于开了C++这门我盼望已久的课,但是这门课哥也学得不咋滴。到了期末考试,也只考了70分,但是我自认为学得还可以,就想找个东西练练手,想写个俄罗斯方块,但是那时候觉得太高深了,换别的吧。正好那时候我们上VB.net这门课,老师正在讲怎么做播放器。OK,就用C++做个播放器出来。哥我兴致勃勃的模仿老师写的那个播放器。首先做个打开文件的功能,打开文件首先要获取文件的路径,最后在csdn上找了半天找到了一个MCF的打开对话框类,然后把别人的代码复制下来了,放在我的程序员,最后点了下打开文件按钮,电脑弹出了一个另我兴奋不已的打开文件的对话框,但是我选择了一个MP3文件后,再点OK,完了,下面代码不知道去哪里复制了。就这样,我的处女作就这样失败了,心里很懊恼,大学的时光已经过去了一半,我慌了,学了这么久,什么都还不会。    学完了C++的基础知识,第二个学期去考了二级C++,挂了。跟我一起考的室友过了,我心里很慌,他都在用java写出了坦克大战的游戏了。英语四级考了一次348分,说来惭愧,因为是专科,考了两次3级,也都没过。大二下学期,我算是恶补C++基础知识,再就是看了下孙鑫的视频教程,买了孙鑫写的那本书《VC++深入详解》,现在看来孙鑫同志的水平也不怎么样。但是那时候绝对是我膜拜的高手,对着他的书上例子一行行的敲着代码。对MFC算是稍微有了点了解。大二下学期,开了门很重要的课《数据结构与算法》这门课也学得不知东西,只是知道世界上还有链表和树这个概念。    大二暑假,这个暑假算是我学C++很重要的一个转折点,在大二快放假的时候,厦门有一家叫万策智业的公司在我们学校招人去他们公司暑假培训实习。而且只要800块,还有很多其它的培训机构也在我们学校招人培训。我是抱着去厦门旅游的心态去那里的,跟着我们学校一伙人,轰轰烈烈的占了一节火车厢,千里迢迢的奔到厦门这个岛上来了。在厦门只呆了一个月就走了。但是这个月对我学习C++的进展非常大,因为我从大二下学期开学以来一直是在恶补C++的基础知识,所以知识一直停留的基础知识这个瓶颈这个地方。但是在那家公司,我遇到了一位有15年C++从业经验的老程序员当我们的老师。我们一起培训C++的只有16个人,叫CT4项目组吧,其中我们学校的6个人,福师大的有10人,其中福师大的有好几个人的技术在我那里候看来,是非常牛B的不得了。我们那个项目组分了3个小组,我是在B组。那这个项目组里面我的技术算是中等的吧。我们要做的是一个《知识抢答系统》的小软件,我们孝个老师我们叫他邹工,邹工给我们需求文档,要我们实现它,我们每个小组分别实现。也就是说,在CT4这个项目组会出现3个不同版本的《知识抢答系统》这个软件,邹工第一步要我们写概要设计,从来没听过概要设计是何方之物的我不知所措,但是有国标的模板,幸好在我们小组里面有两个福师大的人以前干过这事,概要设计我只是跟他们参与了讨论,但是具体的东西还是他们写的,但是刚写完了概要设计,马上就要写详细设计,最后我也照葫芦画瓢的把我的模块写上去了。我的模块是键盘输入,就是知识抢答时的键盘输入,我把除了小键盘之外所有的按键都用钩子函数给屏蔽掉了。只留下了小键盘让人抢答。屏蔽的代码是从《Windows程序设计 王艳平著》这本书上看来的,然后按我的需要进行了修改。这个项目花了20天做完了,编码时间只有一周多一点,最后3个小组进行评比,我们小组获得了第一,离开厦门的那天该公司的老板请我们去喝茶,我是第一次喝着1000块一斤的茶还说有不好喝,最后喝3000多一斤的茶说这味道还可以。那老板说我嘴真厉害,的都能分出来。其实味道差别很小的。   这个项目做完了以后,我发现我进步很快,以前很零散的知识都融会贯通了。最重要是克服了那种学习的好高骛远的心里障碍,以前总是觉得学了那么久,什么都没做出来过,什么东西都没学到,后来才发现,基础知识才是最重要的,如果没有以前的那些基础知识,那个项目我根本就完成不了。所有的什么XXX类库,XXX框架都是虚的。基础知识像是造房子的砖头,没有它再好的设计给你,你也实现不了。而且做完这个项目后我的思维也开始扩展了,不会为了实现代码而代码,开始考虑到优化,但是那里候数据结构刚学完,什么也不会。当我克服了那种好高骛远的心里障碍后,就静下心来学习下一个重要的知识了。它就是数据结构与算法。在厦门的这个暑假,邹工要我们天天写日志,而且经常布置任务,没完成的10个以上的俯卧撑,当我有一天感觉他讲东西实在太快了的时候,我心里感觉很慌张,在OA上发信息问他 C++到底怎么学,那天中午我被他叫到办公室去谈话了。最后是他教我怎么查MSDN,虽然现在我不怎么查MSDN了,因为常用的函数都记住了。但是我学会了碰到问题怎么去解决它的办法了。   大三上学期开学后,我就把主要的精力放在了啃数据结构与算法这门课程上了。在上一些我认为不是很重要的课程的时候,我说看数据结构这书。有空就在电脑上练习。经过半个学期的努力,把链表这弄得很熟了,树也很熟了。但是树用得很少。大三最后一门考试   《Windows网络程序设计》这门课程,我以100分满分的成绩完美结束了我的大学生活。至此我可以说问心无愧了,有人问我对大学的生活有什么遗憾么,我没有遗憾,爱过,也恨过,努力过,又有什么好遗憾的呢。    大三上学期12月份,我们班人都开始出去找工作了,我又继续来到厦门去那里培训,   交了3个月的培训费的,但是到后来我只学了一个多月就走了,但是很遗憾,我并没有再在里面学到什么更高级的知识。因为一起培训的人的技术水平参差不齐,我在里面算是水平高的。但是老师要照顾基础差的人,所以天天还是讲基础,不过把我的基础打得更牢了。    大三下学期我也开始找工作了,我一共面试了3次就被录用了,后来发现那老板很抠门,   干了3个半月,6月份就辞职了,在这家公司主要做了一个信息隐藏的检测软件,自己无聊写了一个信息隐藏的软件,该软件可以将一个文件隐藏在一张bmp图片中,图片的大小一点都不变。检测软件就只是判断图片中是否含有隐藏信息。在这家公司我攒了3000来块了回学校拿了毕业证,拿到了毕业证就直奔深圳了,厦门跟深圳真是没得比,我深有体会。在深圳找工作花了10天左右,到了一家新成立的游戏公司当服务端程序员。主要做技能系统、宠物系统、任务系统,NPc模块等,另外写些其它模块的代码。每个技能都写了一个lua脚本,宠物的属性计算也用写了一个lua脚本,每个任务都有写一个Lua的配置脚本,每个NPC也有一个配置脚本。用脚本的好处就是可以热修改。方便游戏策划们修改游戏数据。开始我也不会Lua这种脚本语言,最后花了一个下午学会了。我写了整个服务端的逻辑代码35%左右,游戏要在2010年1月出来,现在上面天天催进度呢。由于老的任务系统满足不了新的需求,本周把以前写的任务系统代码全部按新的需要重新设计了,精简了百分之30以上的代码量。把逻辑也理清了许多。任务系统的客户端主要是显示功能,百分之80以上的逻辑处理都压在了服务端。由于主动技能太过于复杂,本来想做一个通用的函数,最后发现没法做,最后只能是一个主动技能写了一个处理函数,这样的好处是可以应对策划新提出的几乎任何高难度的技能。技能的写了些原子级别操作的函数让其调用。技能的释放后的状态处理也是个难点,不过还是被我给完美的解决了。一直在考虑怎么优化技能的效率,现在虽然功能上实现了,但是觉得还是不够好。
更多开发者职位上
1)">1)">1" ng-class="{current:{{currentPage==page}}}" ng-repeat="page in pages"><li class='page' ng-if="(endIndex<li class='page next' ng-if="(currentPage
相关文章阅读c++开源项目 适合初学者学习
[问题点数:90分]
c++开源项目 适合初学者学习
[问题点数:90分]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
相关推荐:
2011年8月 C/C++大版内专家分月排行榜第二
本帖子已过去太久远了,不再提供回复功能。有什么适合提高 C/C++ 网络编程能力的开源项目推荐?
按投票排序
首先 C 和 C++ 是完全不同的技能,所以不好混在一起谈。且说到 C++,我们先假设不是指 C++11 或 C++14,因为它们也几乎可以说是不同的语言。其次,我假设问这个问题的追求是已经有一定C/C++基础后的进阶。因为成熟的项目都结构都已经很复杂了,并不适合初阶选手。对于刚入门不久的同学,最好的方式是到 GitHub 按语种搜索后,选代码行数和文件数比较少又比较高评价的项目看就好。找成熟项目代码来钻的方法并不适合每个人。进入正题,对于C来说,推荐3个分类:* GNU工具系列:这类工具比较小,历史比较悠久。挑一些小块头的来简单看看,应该是不错的。* libCURL:如果只是从Client的角度,特别是想学习HTTP请求,看这个就对了。* nginx:个人认为是所有C代码中最棒的。进阶最佳选择,如果能完全吃透可以所向披靡。* php:单从网络层来说伐善可陈,不过其ext扩展模块的设计方式,解释语言的思路,还是很经典的C实现。对于C++来说,可以推荐的项目比较少,因为C++自己是有硬伤的。又因为这些硬伤,最近几年C++标准的变化(进化)又非常大:* mongodb: 还可以* boost asio: 所有boost源码应该说都是C++的实用精华,都值得一读注:C++的未来是C++11,所以目前C++的奇技淫巧都可以放一边的。面向未来直接看C++11-14的library是不错的选择。
Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写, 代码实在太简洁,源码加起来不到600行。下载链接:Tinyhttpd是一个超轻量型Http Server,使用C语言开发,全部代码只有502行(包括注释),附带一个简单的Client,可以通过阅读这段代码理解一个 Http Server 的本质。下载链接链接:高性能web服务器C语言写的事件驱动框架:C++面向对象网络变成工具包:用于网络和底层I/O编程的跨平台的C++库:C++ REST SDK:高级网络编程的开源库集合:C语言的异步网络 :多协议文件传输库:非常轻量级的网络服务器 :用于Linux多线程服务器的C++非阻塞网络库 :C/C++的TCP 客户端/服务器库 :基于C语言的超轻型软件平台,用于可扩展的服务器端和网络应用。 对于C编程人员,可以考虑node.js :C语言HTTP服务器库,其设计为轻量级,易使用。:用于构建网络和基于互联网应用程序的C++类库,可以运行在桌面,服务器,移动和嵌入式系统。:为游戏开发人员提供的跨平台的开源C++网络引擎。 :用于Qt之上的C++构建的异步Web框架。 :基于C++/Boost Aiso的websocket 客户端/服务器库 :高速,模块化的异步通信库这个网站整理的比较全,可以看看另外编写高性能web服务器当然离不开缓存啦,可以关注下Redis和Memcached.
看到这么多人推荐的项目都是很多人知道的项目,我推荐一个比较小众的:N年前看到这篇文章的时候主动联系了作者,后来成了现实中的好朋友.这个项目是他最开始学习网络编程时的作品,后来已经不做维护,实现了reactor/proactor的网络模式.
陈硕的muduo不错
偏重应用层协议: nginx,named,
dcerpc, net-snmp,loudmouth,偏重传输层: sendip, FreeBSD TCP stack库: FreeBSD evlib, glib, libcrul, Posix 通用接口 和 linux内核的epoll。 以上都为C, 典型C++的不多,推荐一个rTorrent. 以上皆为研究过,保证一般意义上的品质。
如果楼主问的是网络编程,而不是网络框架。那么 redis是最适合学习的,一个简单的 tcp server,再加一个 reactor。如果想了解到更深入包括网络内核那么必须是nginx的网络模块。
nginx,这么经典的,网络编程的教科书了
如果自己的工作也是网络服务开发的话就更好了。可以看看libevent,muduo个人感觉太过于炫技了。自己学着写一个更棒了。
反对一开始就去看框架,大部分人只会误入歧途。初学者我建议先看mini-httpd, 然后再看lighttpd。如果要学习协议的状态机,建议去学习busybox的udhpcd。然后去看dhclinet。win32下有。要学习大型协议处理,建议去看一下Net-snmpd,它有unix-like和win32的多平台版本。如果要学习搞高性能的原理,那么可以去看nginx,memcached。到了这里,还要提高性能,基本就不单是用户空间(user-space)的事情了。学习曲线会突然变陡。你要开始考虑,负载均衡,网络延迟,硬件性能,接口性能,处理器管理,甚至是cache级别的优化。
lighttpd,apache。memcached比较小,容易研究点
libevent。memecached, redis
muduo,的确不错,看过netty跟nio的一些api再看muduo觉得熟悉好懂,muduo的代码本身质量也相当棒。
有一个开源社区叫做avplayer,有兴趣的话可以去看看,我知道里面用到的基本上就是boost的一些网络编程呢
云风有一个skynet里面有一个epoll封装
为何不看看陈硕先生的 木铎
ICE和ACE,2个框架的侧重点不同,可按照兴趣研究其一即可
直接上框架只能阻碍你对网络编程的理解。去熟悉 TCP/IP,然后开始写东西。写一个比 wget 更快的 HTTP 下载,跟 Nginx 能拼速度的 HTTP 服务器,你的网络编程能力自然会达到一个完全不同的境界。
boost.asio
其实个人觉得研究一个网络库就好,譬如上上楼说的muduo
其实,感觉先把linux中的网络模块熟悉一下就很好,比如TCP的实现。求介绍一个适合新手的游戏开源项目
[问题点数:20分,结帖人MAOMAOXIAOHUO]
求介绍一个适合新手的游戏开源项目
[问题点数:20分,结帖人MAOMAOXIAOHUO]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
相关推荐:
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。

我要回帖

更多关于 适合初学者的舞蹈 的文章

 

随机推荐