Re: 物件繼承與c++
所以jenallen才說,
都用c#的思考去寫c++本身就是有點怪了
c#在很多方面上都是包了一層語言特性的限制
本質上很多的觀念都是
繼承自C++, java ...etc各種語言
命名衝突你有沒有使用namespace
交互include有沒有用到#ifdef #ifndef #define
然後你拿bcb跟vs比喔...
尤其如果是BCB6,那真的很舊了...
檢查可以使用哪些member function還會給你idle超久
但是他也會告知你會回傳哪些型態阿
只是我記得bcb6就真的沒有auto complete的熱鍵
我在寫畢業模擬程式時也是this->連發呀~
你說的變數取名用到型別,應該是匈牙利命名法!?
bcb6裡面用的量還好吧?
我看過用最凶的好像是寫mfc時..變數真是...
我認為,把一些其他語言的特性拿來利用是很好
但是,如果能依據各種語言本身的特性來寫
我想你會寫的更順利
當然也是對我自己說拉^^~
koji
※ 引述《tomex (tomex_ou)》之銘言:
: 我以前沒學過c++,因此初學時都用c#的物件概念去看待它
: 例如在enum(列舉上),c++沒有包一層group的區別
: 導致使用上很容易與其他include檔的列舉命名衝突
: 後來我就用Struct(結構)來作到像C#的列舉語法:
: C# code:
: enum MyEnum
: {
: A,
: B
: }
: MyEnum.A
: MyEnum.B
: 又發現struct在交亙include *.h時也會衝到
: 也只能宣告不能給值(除了static const外),何不用class呢?
: 因此在c++中,我開始全部都宣告成class,
: 來達到C++ IDE環境中語法提示的功能。
: 我也善用this->,為什麼?
: 因為bcb不能在首字就直接語法提示!
: 就像java命名風格所說的,變數取名不要有prefix型別縮寫
: 因為那是editor的責任,在vs.net中不用prefix也沒差
: 聰明的editor隨時跟你報告它的型別。
: 以上都是在反映ide影響產能,甚至影響程式風格的寫法
: 也因為c#的概念,讓我直接就在c++實現interface及繼承的觀念
: 怎麼看,還是覺得c#好用!
: 因為它的底層都包得很好又直覺
: 在上層工作,就能直接做要做的事....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.138.238.12
討論串 (同標題文章)
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章
105
152