1樓:rayhunter
這個問題有意思,大佬們說的對。
本身就應該寫兩個函式,但是非要從技術角度看。
我想到的是傳位址解決拷貝問題,
然後用引數自動推導,求得陣列大小
N模板特化來分支
仿函式,過載()操作,
勉強滿足樓主要求。
template
T>class SortFunctor {};template intN >class SortFunctor T>class SortFunctor vector intarray[10 ]=;std ::vector vec= ;SortFunctor (array )>()(& array );SortFunctor (vec )>()(& vec); 2樓:塵中遠 std::sort就可以,你vector就傳迭代器。陣列的話,陣列的首位址就是迭代器的begin,陣列首位址加上陣列長度作為迭代器的end。 3樓: 可以參考STL中迭代器的構造方式。 STL原始碼剖析中詳細介紹了構造的思路和方法,基本上就是一步步引導的方式,推薦閱讀: 1. 首先直接封裝指標作為迭代器, 2. 發現無法獲取型別資訊,然後嘗試了增加模版引數利用引數推導來做,3. 然後發現這樣無法在返回值中應用這個模版推導的特性,4. 然後使用了在類中宣告型別的做法, 5. 接著講了trait技法:使用部分特化來處理原生指標和const指標的情況。 4樓:陳碩 void sort (vector template >void sort (int(& x)[N]) 為什麼一定要用模板?用過載不行嗎? 暮無井見鈴 用不著浮蓮子,這裡用繼承更直接。公用部分寫到 TestBase 裡。template T class TestBase template T struct is complex std false type template T struct is complex complex std... HOOCCOOH 首先假設題主需要這個差值的十進位制表示。根據 IEEE754 浮點使用的二進位制表示法必定在十進位制下有限位數,直接用 printf 指定位數列印即可。唯一需要注意的是到底需要打多少位才夠。我們知道浮點在計算機中表示為 其中 為尾數字數,為浮點指數。又由於 0 eeimg 1 在十... 王加加 不同程式語言的後端框架有很多,選乙個順手的就可以了。看起來這個需求也不是很複雜,選最簡單的框架來實現就可以了。以Python為例,Django有點重,可以用輕量一點的Flask。既然你已經寫了C 控制台應用,問題就變成 如何用python呼叫乙個可執行程式,並且獲得輸出?這個有很多辦法,比較...乙個關於C 模板的問題?
如何用c語言編寫乙個程式,計算float x 0 1與0 1的差值
如何為c 編寫的程式製作乙個網頁版的應用呢?