主題: [求助] [問題]C++和C#和.NET的問題??? [打印本頁]
發表人:
saltire 時間: 2005-7-21 09:08 PM 主題: [問題]C++和C#和.NET的問題???
小弟想請問一下
C++和C#的差異在哪
.NET版本和VC差在哪呢
該如何選擇好呢
在電子業界中常聽到要使用C/C++來寫系統軟體
那我該學C++還是C#呢
發表人:
Acute 時間: 2005-7-21 10:34 PM
C# 完全沒用過, 基本上... 應該是寫網路程式才用得到吧
C++ 寫一般應用程式用的 (Windows/Linux 都有機會使用)
C 啥都可以寫, 包括一般應用程式或者非一般應用程式, 例如... Windows driver, 或者非Windows/Linux platform 的程式
這篇比較不像這一區的文章..
Acute.
發表人:
saltire 時間: 2005-7-21 10:48 PM
我好像PO錯板了
應該要PO到讀書板才對...XD
發表人:
bonta 時間: 2005-7-21 11:12 PM
C 算是古董了 但仍普遍使用 特別是入門學習者通常都會接觸一下 語言部份也才 40幾句而已
C++ 則是比 C 多了幾句有關 OO 部份的句子 全部才 50 幾句而已
但這只是 '語言' 部份而已,語言部份受 ANSI 組織的規範,所以幾乎所有的 compiler 都會支援達 99%
不管你是用商業公司發行(應該要錢的) Borland, Microsoft, IBM, INTEL... 等,或是免費的 GUN C++ ,這些 compiler 對 '語言' 部份幾乎可以說 99% 能支援。
再來就是 '函數' 部份,受 ANSI 組織規範,大部份的標準函數如 atoi, sprintf, fopen 這種公共函數,幾乎所有的 Compiler 都會支援,如果你的程式只有用到這些,那麼移植性是很高的,你可以從 linux 移到 windows ,只需要小小的修正一下就行了。
但現實中這種程式不太多就是了。不過懂得 C++ ,想在多種作業系統下工作的確是容易些。
再來就是有關 windows 部份,光靠純 C++ 語法 + windows api 就想寫一個有視窗的程式出來是很吃力的,所以為了簡化撰寫’視窗' 各家的都推出他們開發的 framework,例如 Borland C++ Builder 使用 VCL, VC++ 使用 MFC, .NET 系列使用 FrameWork 1.1 來寫,這些龐大的 FrameWork 才是開發人員最花時間去了解的東西,而不是 "我該使用什麼語言"。
C# 是新的語言,不過目前只能在 .NET 下使用,速度上....mmm。
不過你說的 '電子業' 不知道指的是不是要寫單晶片的程式,那麼可能只有 C 可以使用
至於網路程式 windows 有 WinSocket 函數組,unix/linux 下有 socket 函數組,兩者非常相似,只要有 C 的程式就能操作,除了 WinSocket 多了一些配合自身系統提供的功能。
[bonta 在 2005-7-21 11:15 PM 作了最後編輯]
發表人:
藤原豆腐店 時間: 2005-7-22 12:31 AM
主要是看你將來開發的軟體偏向哪一方面,兩者相似的地方只有基本
的語法(流程控制、條件式之類的),如果走電子甚至於遊戲界,就學
C/C++吧,如果是開發資料庫相關、Web Base架構(ASP.NET)或視窗
應用程式的話,就學C#或VB.NET吧
還有個J#,作為JAVA程式設計師跳槽至.NET轉換平台...
語法較接近JAVA,但其實真的需要學.NET的話直接學
C#就好了,會JAVA的學C#很快啦,另外會C++的人
學C#也應該不是難事,至少在C#裡不太容易看見指標
[藤原豆腐店 在 2005-7-22 01:50 AM 作了最後編輯]
發表人:
lovelegend 時間: 2005-7-22 01:35 AM
還記得 J++ 嗎? J++ 可以說是 MS Java...
還記得 MS 被 Sun 告嗎? MS 最後的反應是停止開發 J++, 另開一個 syntax 和 Java 相似的語言, 但是用另一個 virtual machine, 那個就是 C# 了 (其實就算不被人告, J++ 根本和 Java 越走越遠, 另開一個名稱也無不可, 只不過不知笨 MS 為何叫 C#, 這樣會讓人誤會是和 C++ 相似的東西, 而事實卻不是這樣)...
至於 .NET, 其實就是把主力放在 Internet 上, 應該是優化或簡化網路通訊, 寫這類軟體會較 C++ 方便吧? (純猜測.. :D)
用 "J++ C#" 來查 Google 會找到很多文章, 這是其中一例...
發表人:
Acute 時間: 2005-7-22 09:19 AM
引用:
bonta寫到:
不過你說的 '電子業' 不知道指的是不是要寫單晶片的程式,那麼可能只有 C 可以使用
離開Windows/Linux 之外的環境, 我還沒見過提供C++ compiler 的
無論是68K系列, ARM 系列 or MIPS R3000, 除非把Linux 弄上去
不然, 就是只能用C 來寫 (廠商只提供C compiler)
至於低階的8 位元CPU, 當然只有C 可以選, 呵
我用過的DSP 也是只有C only
C 本身又分K&R 跟ANSI 兩套語法, 雖然說同質性很高, 但是, 其實是有差異的
Acute.
發表人:
saltire 時間: 2005-7-31 12:35 AM
原來如此
難怪學校電機系都只教DOS下的C和C++
不是沒有理由的啊
不過就算學完了
程式功力還是不如資工資管系啊
最近也在考慮要找寫C的電子業工作
但好像公司都希望有經驗的人來做
像我還未有工作經驗的
該如何是好呢
我是不是該去買一本VC++來看呢
發表人:
Frederic 時間: 2005-7-31 12:34 PM
引用:
saltire寫到:
我是不是該去買一本VC++來看呢
對自己喜歡的事物想要深入探討有何不好
何況買本書, 說不定內容還有你沒學過的東西
買不買書, 是你自己可以決定的
發表人:
fehov 時間: 2007-2-24 02:30 PM
可以都學阿~~多學一點以後也用的道.
歡迎光臨 TWed2k (http://twed2k.org/) |
Powered by Discuz! 4.1.0 |