成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C語言和C++哪個(gè)效率更高?老司機(jī)3句話告訴你答案

新聞
很多小伙伴都會有這樣的疑問,C語言和C++執(zhí)行效率上哪一個(gè)更高呢?針對這樣的問題,今天我們就一起來看一下吧!

 很多小伙伴都會有這樣的疑問,C語言和C++執(zhí)行效率上哪一個(gè)更高呢?

針對這樣的問題,今天我們就一起來看一下吧!

[[272786]]

1.開發(fā)效率

當(dāng)代碼量比較小的時(shí)候,使用c語言可以很方便的就完成代碼的開發(fā)和維護(hù),但是當(dāng)代碼量達(dá)到一定數(shù)目以后,c++面向?qū)ο蟮乃枷氲膬?yōu)勢就很好的體現(xiàn)出來了,這種思想使代碼重用更加高效。

2.執(zhí)行效率

從語言特性角度上來看,C++是C的超集。

在(C++) - C的這部分語言特性中有很多會降低執(zhí)行效率。一個(gè)例子是dynamic_cast,執(zhí)行一個(gè)dynamic_cast要消耗100-300個(gè)CPU cycles,因?yàn)闄C(jī)器要跳到一段特別的snippet(一小段程序)去檢查type inheritance。

除了語言特性,通常比較語言也會比較它們的標(biāo)準(zhǔn)數(shù)據(jù)庫。

例如C++中std::sort函數(shù)肯定比C語言中的qsort快(因?yàn)閠emplate function的優(yōu)點(diǎn)),但是C++中的iostream系列又比C的printf系列慢幾乎3倍,但是由于C++標(biāo)準(zhǔn)庫功能比C語言大得多,許多時(shí)候我們可以用較少的開發(fā)時(shí)間就在C++中實(shí)現(xiàn)相同的算法。

另外,不同編譯器對語言的執(zhí)行效率影響也很大。

3.C++相對于C的抽象,相較于直接用C的實(shí)現(xiàn),效率如何呢?

異常:對于GCC C++用的dwarf異常比C里面模擬實(shí)現(xiàn)用的longjmp時(shí)間效率要高,畢竟他記錄了哪些callee-saved 寄存器是需要恢復(fù)的,用空間換了些時(shí)間。

返回結(jié)構(gòu)體對象:C++支持對于非POD執(zhí)行返回拷貝優(yōu)化,C99結(jié)構(gòu)體由于都是POD,有的版本依然不能支持返回拷貝優(yōu)化。

虛函數(shù):這種抽象,C實(shí)際有2種實(shí)現(xiàn),一種就是照搬C++的實(shí)現(xiàn),顯然效率不會有太多差別;第二種是讓每個(gè)對象持有每個(gè)虛函數(shù)的函數(shù)指針,初始化慢些且對象或者虛函數(shù)多了也特別費(fèi)內(nèi)存,但是調(diào)用虛函數(shù)時(shí)少了一次間接尋址,而且還可以運(yùn)行期修改這個(gè)函數(shù)指針的值。

C++函數(shù)模版(operator <) vs C函數(shù)指針定義concept(qsort的比較函數(shù)指針):本質(zhì)是生成多份實(shí)例用空間換時(shí)間 VS 用函數(shù)調(diào)用解耦可復(fù)用代碼和不可復(fù)用代碼從而避免可復(fù)用代碼產(chǎn)生多份實(shí)例,前者占用內(nèi)存多點(diǎn)但少了些許跳轉(zhuǎn)對流水線友好,后者占用內(nèi)存少點(diǎn)但多了些函數(shù)跳轉(zhuǎn)對流水線不友好。

責(zé)任編輯:華軒 來源: 個(gè)人圖書館
相關(guān)推薦

2016-05-12 15:34:04

云計(jì)算

2022-07-01 11:56:54

C語言C++編程語言

2023-12-30 11:01:19

C語言C++編程

2020-07-07 08:51:52

編程語言C語言Java

2015-09-21 13:04:01

創(chuàng)業(yè)秘籍

2015-02-05 09:39:03

程序猿程序員

2018-01-18 22:06:45

2012-11-13 16:31:39

效率工作效率項(xiàng)目

2010-07-14 14:46:21

2023-05-08 15:44:23

3D數(shù)字人

2010-01-14 16:35:31

C++優(yōu)化

2011-05-18 15:48:49

MySQL數(shù)據(jù)庫

2021-12-01 10:18:08

MongoDBMySQL數(shù)據(jù)庫

2020-12-31 10:59:45

神經(jīng)網(wǎng)絡(luò)機(jī)器學(xué)習(xí)人工智能

2019-04-01 14:40:32

Veritas數(shù)據(jù)管理

2010-01-15 17:38:37

C++語言

2020-11-04 08:37:37

C語言C++內(nèi)存

2014-12-16 08:58:17

甲骨文Oracle數(shù)據(jù)庫選件

2010-01-27 15:46:15

學(xué)習(xí)C++效率

2013-09-29 11:08:08

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 玖玖玖在线观看 | 亚洲高清免费 | 一区二区在线不卡 | 天天操天天操 | 黄视频在线网站 | 午夜精品一区二区三区在线视频 | 国产在线一级片 | 男女羞羞免费网站 | 国产免国产免费 | 国产黄色网 | 精品久久久久久久久亚洲 | 国产电影一区二区 | 日韩免费成人av | 国产精品国产成人国产三级 | 欧美成人影院 | 三级av在线| 先锋av资源在线 | 欧美一级精品片在线看 | 精品一区国产 | 2022国产精品 | 成人久久久 | 中文字幕 亚洲一区 | 久久久婷婷 | 日本福利在线观看 | 精品一区二区三区在线视频 | 亚洲视频区 | 一区二区视频 | 精品日韩一区二区 | 亚洲免费网 | 午夜网站视频 | 91精品国产91久久久久久不卞 | 久久精品国产一区二区电影 | 性高湖久久久久久久久aaaaa | 日韩综合网| 国产精品一区二区久久久久 | 国产精品久久久久久久久久久免费看 | 国产精品一区二区久久久久 | 天天看天天干 | 日韩欧美国产精品 | 精品久久久久久久人人人人传媒 | 自拍偷拍第一页 |