Re: 請問陣列的宣告…

看板java作者時間20年前 (2004/06/25 22:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串10/11 (看更多)
※ 引述《wripery@kkcity.com.tw (平淡)》之銘言: > ※ 引述《Wiseman.bbs@bbs.cs.nthu.edu.tw (benqer)》之銘言: > > 那你要如何處理以下的問題 > 這很容易吧: > 需要加的時候才加就行了! > Take it easy. 既然有需要加的時候, 為何又多此一舉把template省略? 就為了少打幾個字? 為了讓程式看起來像script? > > 1. template<typename T> > > void func(T p) > > { > > typename T::size_type i= p.size(); > > } > > 現在你說可以把template省略, T也可以省略, > > 那請問省略之後, 要如何才能取得參數p的型別(原本為T)的typedef ? > > 如同上例, 我們原本可以用typename T::來取得關於T type的其他資訊 > > 現在你把這些重要資訊都省略了, 要如何解決以上的問題? > > 2. template的template parameter不一定只用在函式的參數上, 也可能是 > > 用在函式的區域變數 ex > > template<typename T> > > T max(T p1, T p2) > > { > > T result; > > if (p2>p1) result = p2; > > else result= p1; > > return result; > > } > > 如同上例, 請問如果template跟T都省略了, 你如何指定result跟 > > p1,p2同type這個事實? > > "由compiler辨析該採用的版本"這句話說得還不夠清楚嗎? > > 你要不要再回去K一下c++的書再來討論? > "由compiler辨析該採用的版本"中, > template 字眼的確是有時可省略的。 根本沒回答問題, template省略了, compiler如何知道T是template parameter 而不是type name?, 如果T也省略了, programmer如何指定p1,p2, local variable 的type? 這麼喜歡省略, 那你為何不建議把class也省略, 反正class沒有return type, 沒有return type, }後面有分號的 的 C { };就可以辨析為class了囉? > > 根本就是屁話, 你有什麼知識跟經驗夠格為大家指出c++的未來發展方向? > > 連基礎知識都不夠, 只是看了script的動態彈性就一廂情願的自以為是靈 > > 丹妙藥, 如果你這麼喜歡script, 請改用smalltalk, static type的c++ > > 是不合你胃口的 > 嗯…看起來這已經不是 script 了,而是比 C++ 更進步的語言。 這麼有遠見的話可以去c++標準委員會提案, 看你怎麼說服c++委員會何以用了十年的template可以省略, 以及script特性為何是c++未來發展的方向 > > 什麼彈性? 你可以用那樣的彈性應用在那裡? > > 有彈性就一定好喔 ? , 自己再想想吧 > 在「程式發展的過程」中,有彈性是很重要的! 彈性不是絕對的優點. > > 蠢得要命, function signature不指定回傳的type, 要讓compiler自己猜 > 不是讓 compiler 自己猜,而是從 return 中尋找,這個功能蠻好的啊。 不要活在自己的世界裡. 請仔細想一下,不然也可以問一下專家, 不指定return type的優點跟缺點相比, 到底何者為大 > > 就為了少打幾個字, 使用此function的人從此得從function的comment or document > > 猜回傳的型別. > > 我想你乾脆就把c++改成type-less, 所有的type都由compiler > > 從程式中粹取導出定義好了. > 程式語言的最終目的,本來就是要讓人類輕鬆簡易的表達出所需要的計算功能。 > 一起朝這個方向來努力吧!讓 C++ 達到「容易表達」的境地吧。 把return type 省略就叫做容易表達 嗎? 我覺得是無法表達吧, 沒有return type所以programmer無法表達明確的return type 再提醒一次, 你們的想法真是蠢到爆, 要不要修正就看你們了 -- ※ Origin: 楓橋驛站<bbs.cs.nthu.edu.tw> ◆ From: NK219-91-114-115.adsl.dynamic.apol.com.tw
文章代碼(AID): #10t30V00 (java)
文章代碼(AID): #10t30V00 (java)