Re: [問題] 想問關於Borland C++跟一般C++的差別?

看板C_and_CPP作者 (800IM)時間9年前發表 (2016/02/10 15:59), 9年前編輯推噓5(5013)
留言18則, 12人參與, 最新討論串2/2 (看更多)
※ 引述《mick99988 (高雄人)》之銘言: : 各位大家好 : 最近因為主管希望我學C++(Borland C++) : 但我所認知道的C++在大學時期好像沒有像是C#可以拉物件來寫 : 我所記得的是要用什麼Cin阿 Cout之類的語法的阿,然後執行後就是一個 : 命令提示字元的黑窗,而非能說有按鈕讓我們按 有txtBox能輸入... : 所以這兩個是不是本質上有不太相同? : 因為在以前想到能拉物件來寫程式腦袋自動聯想到C#或是Ladview : 有無Borland C++6 初學者向的書籍呢? : 小弟只接觸過C語言跟Keil C 剛好你講的這些除Labview我都碰過,真應該請我去上班才對XD 真要從頭講起,得先談MFC,但是太可怕了不要詳談。 所謂能拉的這些GUI元件,本質就是windows API,就是windows提供的一些C++物件, MFC只用了最少的包裝,幾乎直接操作,所以很恐怖。 Borland C++ 就是把windows API包成比較簡單可愛的VCL,所以GUI拉起來和C#很像, 而且還不需要.net framework。 最早我用VB6寫視窗軟體,但是為了OO、為了快、而且不要依賴.Net, Borland C++是除MFC之外唯一選擇,這選擇大概只持續了兩三年。 後來.net越來越強大,在win8中都已經是預設的環境了, 加上VS太好用、C#在MSDN的支援夠強大資源夠多,只好屈服, 目前C#/winForm/WPF 是我主要的是視窗軟體開發工具。 以上我說的這些GUI工具,包含我不會用的Labview, 在底層其實都呼叫windows API,因為最後寫入VRAM都要走這關,差別在包裝不同。 MFC只包薄薄一層所以很難用, Borland C++用VCL,包簡單很多,但是目前資源越來越少, .net系列的全都是都透過.net framework去包WinAPI; 不過WPF好像有比較特別,是把GUI當作多媒體用DirectX顯示?? Borland C++ 和 你大學學的那種C++ 本質上是相同的,Borland C++只是多很多class, 這些class最常用到和GUI有關的,還有一些就是socket等等之類的。 所謂"拉"GUI這個動作,其實就是物件的 new + member variable 設定, 只不過個這個物件看得到, button的位置、大小、顏色、文字都是某個button object的member variable。 也可以用單純的C++呼叫這些WinAPI,這樣你就是GUI自幹王,不必依賴上面這些工具了 我上次就這樣和com port通訊,結果很不方便。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.167.213.18 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1455119994.A.3B5.html ※ 編輯: deo2000 (42.79.149.59), 02/11/2016 00:32:13

02/11 01:12, , 1F
這兩年真的很多人屈服了 bcb6應該快被遺棄了
02/11 01:12, 1F

02/11 01:51, , 2F
別當自幹王 被學長幹翻天的同時 學妹已經拉完GUI了
02/11 01:51, 2F

02/11 01:52, , 3F
效能跟演算法都是浮雲......
02/11 01:52, 3F

02/11 01:59, , 4F
先寫好邏輯會被罵成狗 先寫好GUI可以說Bug再慢慢修
02/11 01:59, 4F

02/11 02:01, , 5F
所以我覺得快速拉個GUI 在某些情況是一個好用的招
02/11 02:01, 5F

02/11 03:05, , 6F
MFC超噁心的...
02/11 03:05, 6F

02/11 05:19, , 7F
user interactive 的部分需要的效能在 80/20 法則中是可
02/11 05:19, 7F

02/11 05:19, , 8F
忽略的,除非 user 可能用按鍵精靈什麼的去點 XD
02/11 05:19, 8F

02/11 07:51, , 9F
偷偷推薦QT 他也可以用拉的 只不過事件那些要自己來XDD
02/11 07:51, 9F

02/11 12:45, , 10F
幾年前用過一次MFC...啊頭好痛
02/11 12:45, 10F

02/11 13:44, , 11F
偷偷問一下MFC是什麼的縮寫?
02/11 13:44, 11F

02/11 14:12, , 12F
Microsoft Foundation Classes
02/11 14:12, 12F

02/11 16:01, , 13F
先想想 C# 是誰搞出來的,再想想 BCB6 還有沒有將來...
02/11 16:01, 13F

02/11 19:52, , 14F
偷偷問C++CLI 跟MFC哪個比較噁心?我只用過CLI
02/11 19:52, 14F

02/11 20:42, , 15F
C++CL麻煩的是那個^,看起來很討厭XD
02/11 20:42, 15F
因為C++\CLI其實就是C++.net,但是.net原則上不使用pointer,以reference為主。 可是.net reference是會透過.net virtual machine重新映射到實體記憶體位址, 和C++原生reference差異太大,所以用一個有點噁心的^來區隔兩者。 我也曾經認為C++\CLI好棒棒,可以同時運用C++和C#, 不過比較冷門、資源比較少,兩者之間轉換麻煩不少,撐了一陣子。 壓垮我的最後一根稻草是multi-thread programming。 C++\CLI之下的multi-thread必須要用.net class,C++的不能用, 但是C++\CLI卻只能用不完整的.net multi-thread class, 造成thread synchronized和IPC可能要透過global或是根本找不到方法, 最後只好棄用C++\CLI,把半年來寫好的東西全改成C#\WPF。 ※ 編輯: deo2000 (106.1.209.143), 02/12/2016 12:05:26

02/19 13:35, , 16F
VCL滿好玩會很有成就感,應該能讓新手不排斥程式語言
02/19 13:35, 16F

02/19 13:36, , 17F
不過C#的話遇到問題會比較容易找到解答
02/19 13:36, 17F

02/19 13:37, , 18F
我覺得兩個寫視窗手感差不多,就BC++編出來是native
02/19 13:37, 18F
文章代碼(AID): #1MkrvwEr (C_and_CPP)
文章代碼(AID): #1MkrvwEr (C_and_CPP)