對於 C++ 的疑惑?
本人大一,最近快把 C++ 的基礎學完了,然而還是停留在黑白框上。我對於 C++ 的用途,還沒什麼感覺。學校里的人都學著 Java、C 語言,很少人用 C++。所以自己想問一下,C++ 以後一般是做什麼的,並且做的事是讓它無可被替代的?
譬如說Windows、Office、SQLServer、VisualStudio,裡面的絕大部分都有C++,無可替代
主要是效率和開發上的平衡性問題,從大的角度說,語言都是圖靈完備的,只要有合適的編譯器和擴展庫,都可以互相替代,但是現實情況是,一方面每個語言的具體編譯器和運行環境一般來說是一個具體方向,另一方面就效率來說,大部分語言無法達到C++現有實現的程度,雖然傳言C比C++快,但由於C++兼容絕大多數C語法,所以你完全可以在C++下大量用C的特性(假如這方面真的有效率提升的話,實際是挺有限的),而C++會在效率和語法特性中給你更大的自由度去選擇一個平衡點了
拙見,一是歷史項目,重寫代價太大,也沒必要,有需求,語言就不會死。二是遊戲方面,c++效率無可替代~
三是圖形學??不懂這方面。
然後,cocos2dx?ue4?qt?各種系統軟體
各種編譯器,解釋器。各種資料庫,服務,虛擬機。比如 JVM比如 V8比如 LLVM另外,學C++ 要從C++11學起。。。
另外提醒一句,現在有了 webassembly
我現在大三,基本用C++都是用來寫作業代碼,OJ題目。寫項目偏python,js,node。C++可以做很多事,但是對新手來說,學習成本太高。(C++工具鏈學習成本高)我覺得先對編程保持興趣比較重要,至於以後有沒有必要加強c++,可以看自己的發展來定。
覺得沒用就不學,學自己覺得有用的,哪天覺得c++有用了,再學
被動式?或許你對程序設計不感興趣?
做遊戲,畫UI,簡單的IM。我當初學習個列印聖誕樹都無比興奮,各種找演算法學習。
學破解,學hook,多有趣。
用C++嘗試實現event,callback,腳步語言里哪個特性高級就嘗試用C++折騰。hin好玩的。在性能是重要標準,項目規模較大及無法區分效率敏感區及非效率敏感區的時候。
其他時候都是C外掛一個腳本語言基本滿足需求
很多語言是為了快速艹工程而生的,而c++是為你想做任何事情都可以而生的。脫離實際談語言都是耍流氓。做自己的東西用什麼都無所謂,參與社區項目,做公司項目,由不得自己。但是學生黨從深入一門比較底層通用的語言開始是絕對有好處的。比如接觸一門新語言,了解下語言的主要範式,基本庫,再看看編譯器是如何parse代碼,如何生成ast的,基本就可以說掌握得差不多了。
CS的學生本科階段是學會How computer works, 以這個作為出發點你會發現C++只是冰山一角…網易課堂有一個standford的programming patterns,上完那個課程你就會有清晰的認識了…
你桌面上的軟體大部分都是c++,你說能做什麼?
目前國內中小企業招C++的崗位不多,集中在遊戲開發領域。我覺得看你以後的發展方向了,一般學好C++和java兩種語言就可以了,其他語言像js這樣的也可以了解下
個人以為C++不可替代最主要還是效率問題吧
C和C++都是編譯成機器碼直接在CPU上跑的,其它絕大多數很流行很好學很好用的語言都是跑在虛擬機或者解釋器上的,這就造成C和C++的效率天然地比他們高。所以需要效率的程序,比如遊戲引擎、資料庫、操作系統之類的都是離不開這兩種語言的。而C一般是寫操作系統的瘋子專用的,所以實際上離不開的是C++。當然了, 因為重視效率,C++程序難度應該會大一點,要想輕鬆混飯吃的話還是學的熱門語言比較實用。順帶一提本人正在成為瘋子的道路上越走越遠…………
ba不是很清楚 但t裡面全是用c++
題主,看你的情況,你已經掌握了一點C++的語法,下一部要找些實際的項目做做。只學習語法是沒有意義的
其實你只是沒有像其他初學者寫出有炫酷窗口的程序。好辦,如果想用c++寫,就去學輪子哥的gac或者Qt。
我手裡有好多類型啊。怎麼才能在編譯時為每一個類型,給我一個對應的唯一整數呢。。
建議去看看知乎之下其他關於C++的回答 , 比如什麼才算精通C++吧。
題主的學完了是種什麼感覺?
可以在知乎上搜一下 遊戲程序員的學習之路,裡面有個c++部分。可以按著上面推薦的書接著學。c++是個越學越覺得有意思的編程語言。個人認為沒有任何語言是不可被替代的!包括cpp!
cpp應該是算是傳統意義上綜合型語言的鼻祖吧,可以用在任何方面的項目,前後台都可以,跨平台,直接變譯成native code所以速度非常快。這些優點是cpp過去非常火的原因(當然現在cpp也很流行,只是沒有過去那麼流行)。
事物都是有兩面性的,cpp這麼多優點的背後缺點比較難掌握,難精通。這也間接導致開發成本比較高,這是為什麼後來的c#和java逐漸流行起來,python更是因為「簡單易學」而火的一塌糊塗!還有一點就是雖然cpp可以做前端的開發但是相比wpf要複雜的多。當然現在的前端主要網路和移動應用,那是html和js的天下了!
據我了解現在用cpp做前台比較少,大多數是用在對效率要求高的後台上(比如遊戲,高頻交易)。
現在對開發效率和維護成本的要求越來越高,所以相對簡單的語言更火一些,個人拙見,求輕噴!CPP的應用範圍很窄了。不推薦在校生花很多時間學習。
你會了C++,就會了一切。
我在自學C++,我學習的目的就是想去看看V8引擎是怎麼實現的,以及Node是怎麼實現的。推薦閱讀:
※vs2010 程序退出的時候崩潰地方,不知道如何解決?
※C++多線程環境下里如何精確獲取shared_ptr的引用計數?
※如何評價Andrei Alexandrescu提出的c++ policy-based design?
※為什麼libstdc++的allocator要實現兩個operator==?
※為什麼在 C++ 中不提倡 C 風格的強制類型轉換?
TAG:C |