精華區beta Programming 關於我們 聯絡資訊
C++ 的缺點同時也是 C++ 的優點,那就是關於指標的爭議。 但是站在維護的觀點上,如同 wctang 所言 「要維護一個 template 高手的程式一定讓我頭大」。 就這點來說確實如此,不過這要看你維護的是什麼。 如果你所維護的是一支商業程式,需要時時依客戶需要來調整, 那麼 java 是最好的選擇。 但如果你維護的是一個高效能、可以有特定輸出入規格以及功能性完整的函式庫, 那麼 C++ 才是首選。 除了 primative 纇的資料,java 只能使用指標,而且那個指針還不能平移。 但是為了充分運用機械效能,要讓指標達到高效的話,當然得在資料型別上讓步。 其實 C++ 的 virtual 關鍵字也算是一種讓步和彈性, 有了 virtual 再加上一些技巧也可以讓 C++ 擁有 reflection 的能力。 當然,那不是 C++ 天生的。 其實可以建議 C++ 標準委員會, 將 RTTIEnable 關鍵字納入 class 的修飾子之一, 使 reflection 能力變成 C++ 天生的一環。 實做上也不困難,只不過是將所有的成員巡弋過一次, 並新增為該類別的 RTTInformation 成員中罷了, 而那可以是已被標準委員會制定好的資料結構。 長的像這樣:RTTIEnable class MyClass { … }; -- ┌─────KKCITY─────┐ KKBOX歌名歌手歌詞專輯搜尋 bbs.kkcity.com.tw http://www.kkbox.com.tw └──From:109.22.83.10 ──┘ 超過60家唱片公司合法授權 音樂盡情下載 --