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

探秘C++的復(fù)雜性問題

開發(fā) 后端
C++的復(fù)雜性始終是一個(gè)不可回避的現(xiàn)實(shí)。C++中有大量的陷阱和缺陷,后者導(dǎo)致了數(shù)目驚人的慣用法和workarounds。不加選擇的全盤預(yù)先學(xué)習(xí),是非常糟糕的做法,不僅低效。

你用一個(gè)天生用來開啤酒瓶的工具開了啤酒瓶,不但啥成就感也沒有,而且誰也不會(huì)覺得你牛13。然而,如果你發(fā)明了一種用兩根筷子也能打開啤酒瓶的辦法,或者你干脆生就一口好牙可以把瓶蓋啃開,那也許就大不一樣了。人家就會(huì)覺得你很好很強(qiáng)大。

每個(gè)人都喜歡戴著腳鐐跳舞。

也就是說,如果你用一個(gè)天生為某個(gè)目的的工具來做他該做的事情,沒有人會(huì)喝彩,你也不會(huì)覺得了不起。但如果你用兩個(gè)本身不是為某個(gè)目的的工具組合出新功能的話,你就是“創(chuàng)新”者(盡管也許本來就有某個(gè)現(xiàn)成的工具可用)。

而C++則是這些“創(chuàng)新”的土壤,是的,我說的就是無窮無盡的workarounds和慣用法。但問題是,這些“創(chuàng)新”其實(shí)根本不是創(chuàng)新,你必須認(rèn)識(shí)到的是,他們都只不過是在沒有first-class解決方案的前提下不得已折騰出來的替補(bǔ)方案。是的,它們某種程度上的確可以叫創(chuàng)新,甚至研究可行的解決方案本身也是一件非常有意思的事情,但—

我知道它們很有趣,但實(shí)際上它們只是補(bǔ)丁方案。

是的,不要因?yàn)檫@些“創(chuàng)新”方案有趣就忍不住一頭鉆進(jìn)去。你之所以覺得有趣是因?yàn)楫?dāng)你一定程度上熟悉了C++之后,C++的所有一切,包括缺陷,對(duì)你來說就成了一個(gè)“既定事實(shí)”,一個(gè)背景,一個(gè)習(xí)以為常的東西(人是有很強(qiáng)的適應(yīng)性的)。因此,當(dāng)你發(fā)現(xiàn)在這個(gè)習(xí)以為常的環(huán)境下居然出現(xiàn)了新的可能性時(shí),你當(dāng)然是會(huì)歡呼雀躍的(比如我當(dāng)年讀《Modern C++ Design》的時(shí)候就有一次從早讀到晚,午飯都沒吃),然而實(shí)際上呢?其它語言中也許早就有first-class的支持了,其它語言也許根本不需要這個(gè)慣用法,因?yàn)樗鼈兙蜎]有這些缺陷。此外,從實(shí)踐的角度來說,更重要的是,這些“解決方案”也許你平時(shí)編程根本就用不到。

不,我當(dāng)然不是說這些補(bǔ)丁方案不重要。正如前面所說,C++中繁雜的技巧并非空穴來風(fēng),總有實(shí)際問題在背后驅(qū)動(dòng)的。但問題是,對(duì)于我們?nèi)粘>幊虂碚f,這些“實(shí)際問題”簡直是八桿子打不著的。犯不著先費(fèi)上80%的勁兒把20%時(shí)候才用到的東西揣在腦子里,用的時(shí)候查文檔或書就行了。 #t#

看到這里,塑造C++中特定的心態(tài)哲學(xué)的另一個(gè)原因想必你也已經(jīng)知道了。實(shí)際上,這個(gè)原因才是真正根本的。前面說的一個(gè)原因是C++書籍市場(教育)造就的,然而為什么人們喜歡寫這些書呢?進(jìn)一步說,為什么人們喜歡讀這些書呢?(我承認(rèn),我也曾經(jīng)讀得津津有味。)答案很簡單:心理。每個(gè)人都喜歡戴著腳鐐跳舞(事實(shí)8)。認(rèn)識(shí)到這一點(diǎn)不是為了提倡它,而是只有當(dāng)我們認(rèn)識(shí)到自己為什么會(huì)津津有味地去鉆研一堆補(bǔ)丁解決方案的時(shí)候,我們才真正能夠擺脫它們的吸引。

總而言之,C++的復(fù)雜性只是一個(gè)必要條件,并非問題的根本癥結(jié)。根本癥結(jié)在于人的心理,每個(gè)人都喜歡戴著腳鐐跳舞,并且以為是“創(chuàng)新”。意識(shí)到這一點(diǎn)之后可以幫我們避免被各種各樣名目繁多的語言細(xì)節(jié)和技巧占去不必要的時(shí)間。

然而,C++的復(fù)雜性始終是一個(gè)不可回避的現(xiàn)實(shí)。C++中有大量的陷阱和缺陷,后者導(dǎo)致了數(shù)目驚人的慣用法和workarounds。不加選擇的全盤預(yù)先學(xué)習(xí),是非常糟糕的做法,不僅低效,而且根本沒有必要,實(shí)在是浪費(fèi)生命。愛因斯坦曾經(jīng)說過,“我只想知道‘他’(宇宙)的設(shè)計(jì)理念,其它的都是細(xì)節(jié)”。然而,正如另一些讀者指出的,如果對(duì)C++中的這些細(xì)節(jié)事先一點(diǎn)都沒有概念的話,那么實(shí)際編碼中一旦遇到恐怕就變成沒頭蒼蠅了,也許到哪里去RTFM都不知道。這也是為什么那么多C++面試都會(huì)不厭其煩地問一些有代表性的語言細(xì)節(jié)的原因。

把細(xì)節(jié)全盤裝在腦子里固然不好,但對(duì)細(xì)節(jié)一無所知同樣也不是個(gè)辦法。那么對(duì)于C++程序員來說,在學(xué)習(xí)中究竟應(yīng)該以怎樣的態(tài)度和學(xué)習(xí)方法來對(duì)付C++的復(fù)雜性呢?其實(shí)答案也非常簡單,首先有一些很重要&必須的語言細(xì)節(jié)&特性是需要掌握的,然后我們只需知道在C++中大抵有哪些地方有復(fù)雜性(陷阱、缺陷),那么遇到問題的時(shí)候自然能夠知道到哪兒去尋找答案了。具體的建議在后文。

責(zé)任編輯:chenqingxiang 來源: linux
相關(guān)推薦

2010-01-27 15:50:23

C++復(fù)雜性

2010-01-21 17:30:12

C++復(fù)雜

2010-01-13 15:41:02

C++的復(fù)雜

2010-01-12 10:28:58

C++復(fù)雜性

2010-01-12 10:57:16

C++的復(fù)雜性

2010-01-21 14:07:14

CC++聲明

2010-01-13 11:27:06

C++安全性

2025-05-08 03:20:00

2017-06-23 08:45:02

存儲(chǔ)技術(shù)復(fù)雜性

2020-01-08 21:38:30

機(jī)器學(xué)習(xí)工業(yè)4.0物聯(lián)網(wǎng)

2010-01-27 17:36:24

C++程序庫

2010-01-21 10:23:53

C++代碼

2024-04-22 13:22:00

虛函數(shù)象編程C++

2010-01-12 15:33:26

CC++

2024-01-23 10:13:57

C++虛函數(shù)

2011-03-31 09:30:07

CC++聲明

2019-05-13 15:47:29

Kubernetes云計(jì)算云復(fù)雜性

2009-01-20 15:23:33

存儲(chǔ)安全密鑰數(shù)據(jù)保護(hù)

2010-01-14 11:07:59

Visual C++

2024-01-31 23:51:22

C++移動(dòng)語義代碼
點(diǎn)贊
收藏

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

主站蜘蛛池模板: 欧美日韩视频在线 | www久| 欧美aⅴ | 亚洲社区在线 | 久久国产一区二区三区 | 午夜男人天堂 | 国产a级毛片 | 91精品国产高清一区二区三区 | 天堂中文在线播放 | 九一在线观看 | 天天干夜夜拍 | 成人国产精品视频 | 黄色精品| 亚洲精品2区| 欧美精品久久 | 福利片一区二区 | 色一级片 | 国产91久久久久久久免费 | 午夜影院 | 精品亚洲一区二区 | 欧美激情精品久久久久久 | 欧美日韩一区二区三区四区 | 日韩一级| 午夜在线 | 奇米影视在线 | 在线欧美视频 | 欧美一区二区在线播放 | 一二区视频 | 日韩二区 | 国产伦精品一区二区三区四区视频 | 国产精品亚洲成在人线 | 国产午夜高清 | 天天干天天操天天爽 | 亚洲精品18| 亚洲精品一区二区三区四区高清 | 国产免费观看一区 | 国产视频三区 | 精久久久久 | 欧美成年人视频在线观看 | 求毛片| 久久久成人一区二区免费影院 |