如何看待 C++ 越來越像 Python 這個說法?

相關鏈接:C++ Has Become More Pythonic

中文鏈接:你們以為我在學C++?其實我在學 Python


說說我翻譯那篇文章的初衷吧。

其實就倆字:好玩。

那會恰好對 Python 挺著迷的, 工作上又一直使用 C++。突然發現,用 C++ 來模仿 Python 的一些特性,即鍛煉了 C++ 的編碼能力,熟悉了 C++ 新標準的語法,又了解了 Python 的基本語法,和一些 "奇技淫巧"。這種雜糅的學習方法,個人覺得挺新穎,又很適合初學者。

我那篇文章的最後給了兩個鏈接是原文沒有的:

  • 如何編程求解 100 以內的質數? - Milo Yip 的回答

  • ryanhaining/cppitertools · GitHub

這麼玩的人,早就有了。難道真的就我一個人覺得很有意思?

萬萬沒想到,這也能扯到語言之爭。。。

萬萬沒想到,這也能變成黑這黑那。。。

用很戲謔,不正緊的語言來描述這麼個玩法,竟然仍然被理解成一種貌似嚴肅的說法了。。。

不知道原作者真實的想法,而我肯定不會把『C++ 模仿 Python』信以為真的。。。

能不能不要總是這麼無聊。

非要板起臉說說這個腦殘,那個菜的。

看看一些有趣的東西,樂呵樂呵得了唄。


一初學python者問禪師:為什麼一個動態而不是靜態的語言,一個應用領域更多是在shell/php和java領域的語言天天會和C++比較呀?

禪師拿起新華字典貼臉上.

初學者恍然大悟:是了!編程的本質,不過都是代碼爾.就像各種文學逃不過一本字典.

禪師跳起來一個爆栗:我是說你們臉皮和字典一樣厚!


跪求python出concept mapping配合模板偏特化(動態語言的話應該叫開放式的動態的multiple dispatching),這兩個搞出來了,我就承認。


別逗了,明明就是 C++ 和 Python 都在學 Lisp(逃


Python 本來就打雜家拳的,你隨便舉個被 Python 學來的 feature 都可以說某某語言越來越像 Python 啊……

  • Range Loop 是好,但 C++ 這語法不是 Java 的么。

  • Python 個動態類型幫 C++11 的靜態類型 + 類型推導唯一的相似點是你不用顯式聲明類型,除此之外根本就是兩碼事。
  • 能腦補 BS 老爹要是因為一個語法糖就羞愧,「也是醉了」。語言層面提供一套默認的 list/tuple/dict 實現是好的,但吹成這樣也太 naive 了吧。

  • Lambda 居然變成 Python 的大神器,抱歉各位我出去笑會。
  • 這年頭這種程度的標庫不是溫飽級別的配置了么。

  • 至於 Variadic Function,C 都有……但這跟 initializer_list 那個 homogeneous list 壓根就是兩碼事好不好。

這種啥都不懂的井底之蛙 Python 腦殘粉,你讓他寫兩天 Haskell 他就乖乖閉嘴了。


Haskell 表示笑而不語


文章里舉例的特性應該是現代高級語言都具備的,不能說是誰抄誰


c++可是背負著高性能的枷鎖追趕腳本語言哦,所以別再比較了,沒意義。


這真的不是在黑?

可人又說了,Python 里創造個 Dictionary 簡單的跟什麼一樣6。

myDict = {5: "foo", 6: "bar"}
print(myDict[5])

切,C++ 本身就有 map 類型,現在又多了個哈希表 unordered_map,更像了:

auto myDict = std::unordered_map&{ { 5, "foo" }, { 6, "bar" } };
std::cout &<&< myDict[5];

試試不藉助第三方庫搞個 myDict = {5:"foo", 6:["bar"]} ?

---

C++新人,Python剛入門,請輕拍……


推薦閱讀:

TAG:Python | C | 如何看待評價X |