世界编程语言排行榜的2009年排行(附2023年最新排名前十名单)
世界编程语言排行榜的2009年排行(附2023年最新排名前十名单):TIOBE世界编程语言排行榜2009年2月榜单。2011年12月5日Tiobe发布了2011年12月的编程语言排行榜。新一期排行榜Objective-C持续给力跃居第五位,而上一期……全球排行榜123网(www.meihu5.com)小编为你整理了本篇文章,希望能解对你有所帮助!
TIOBE世界编程语言排行榜2009年2月榜单。2011年12月5日Tiobe发布了2011年12月的编程语言排行榜。新一期排行榜Objective-C持续给力跃居第五位,而上一期关注的谷歌Dart语言也上升到第68名,但PHP由第四位跌到第6名。从2001年Tiobe编程语言排行榜开始发布至今,C++几乎一直占据着第三名。虽然Perl,VisualBasic和PHP曾经也排到第3名,但和C++相比,他们就显得不值一提了,因为他们最多只能保持几个月而已。然而相比C++,微软的编程语言C#却更被看好,甚至有人认为C#势必会取代C++,C++是垃圾语言。因为微软的大力推广,使用C#的人越来越多,而老将C++却正在被人遗忘。不甘寂寞,2011年C++再次亮剑,13年来第一个重大修订版,C++11横空出世!下面是前20名的编程语言排行掀起C++11的神秘面纱C++标准在1998年获得通过后,有两位委员会委员预言,下一代C++标准将“肯定”包括内置的垃圾回收器(GC),但可能不会支持多线程,因为定义一个可移植的线程模型涉及到的技术太复杂了,13年后,新的C++标准C++11也接近完成,你猜怎么着?让那两位委员没想到的是,本次更新还是没有包括GC,但却包括了一个先进的线程库。C++之父BjameStroustrup说C++11就像一个新语言,的确,C++11核心已经发生了巨大的变化,它支持Lambda表达式,对象类型自动推断,统一的初始化语法,委托构造函数,deleted和defaulted函数声明nullptr,以及最重要的右值引用。C++11中值得关注的几大变化◆Lambda表达式◆自动类型推断和decltype◆统一初始化语法◆Deleted和Defaulted函数◆nullptr◆委托构造函数◆右值引用C++11标准库C++于2003年以库技术报告1(TR1)的形式经历了重大改版,TR1包括新的容器类(unordered_set,unordered_map,unordered_multiset和unordered_multimap)和多个支撑正则表达式、元组和函数对象封装器等的新库。随着C++11标准获得通过,TR1和自它首次发布以来新增的库被正式纳入标准的C++标准,下面是C++11标准库的一些特性:线程库站在程序员的角度来看,C++11最重要的新功能毫无疑问是并行操作,C++11拥有一个代表执行线程的线程类,在并行环境中用于同步,async()函数模板启动并行任务,为线程独特的数据声明thread_local存储类型。如果你想找C++11线程库的快速教程,请阅读AnthonyWilliam的“C++0x中更简单的多线程”。新的智能指针类C++98只定义了一个智能指针类auto_ptr,它现在已经被废弃了,C++11引入了新的智能指针类shared_ptr和最近添加的unique_ptr,两者都兼容其它标准库组件,因此你可以在标准容器内安全保存这些智能指针,并使用标准算法操作它们。新的算法C++11标准库定义了新的算法模仿all_of(),any_of()和none_of()操作,下面列出适用于ispositive()到(first,first+n)范围,且使用all_of(),any_of()andnone_of()检查范围的属性的谓词:#include//C++11code//arealloftheelementspositive?all_of(first,first+n,ispositive());//false//isthereatleastonepositiveelement?any_of(first,first+n,ispositive());//true//arenoneoftheelementspositive?none_of(first,first+n,ispositive());//false一种新型copy_n算法也可用了,使用copy_n()函数,复制一个包含5个元素的数组到另一个数组的代码如下:#includeintsource[5]={0,12,34,50,80};inttarget[5];//copy5elementsfromsourcetotargetcopy_n(source,5,target);算法iota()创建了一个值顺序递增的范围,好像分配一个初始值给*first,然后使用前缀++使值递增,在下面的代码中,iota()分配连续值{10,11,12,13,14}给数组arr,并将{‘a’,’b’,’c’}分配给char数组c。includeinta[5]={0};charc[3]={0};iota(a,a+5,10);//changesato{10,11,12,13,14}iota(c,c+3,'a');//{'a','b','c'}C++11仍然缺乏一些有用的库,如XMLAPI,套接字,GUI,反射以及前面提到的一个合适的自动垃圾回收器,但C++11的确也带来了许多新特性,让C++变得更加安全,高效,易学易用。如果C++11的变化对你来说太大的话,也不要惊慌,多花些时间逐渐消化这一切,当你完全吸收了C++11的变化后,你可能就会同意Stroustrup的说法:C++11感觉就像一个新语言,一个更好的新语言。
声明:本文图片、文字、视频等内容来源于w.sf024.com,本站无法甄别其准确性,建议谨慎参考,本站不对您因参考本文所带来的任何后果负责!本站尊重并保护知识产权,本文版权归原作者所有,根据《信息网络传播权保护条例》,如果我们转载内容侵犯了您的权利,请及时与我们联系,我们会做删除处理,谢谢。