[問題] template 偏特化設計問題
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
Ubuntu 13.04 (g++ 4.7.3)
問題(Question):
我現在設計了一個 struct 用來處理二維坐標點
(程式碼已減化成只剩一個 ctor)
因為 type 有可能是 int 或 double,所以我就直接設計成 template
這樣以後 reuse 也方便的多
而現在我有另一個演算法,需要分別對這些座標點的 x 與 y 做處理
舉例來說,我有一堆座標點,我想要分別得知他們最大的 x 與 y 分別是多少
最簡單的方法就是寫兩個 function 分別處理 x 跟 y
不過我要實作的演算法有點複雜,如果這樣做以後要維護會是個負擔
所以就設計了另一個 struct 用來處理 access member data 的問題
底下的 code 是目前想到的設計
(因為 function 不能做偏特化,所以才改用 struct
而且多載了 operator() 讓它變成 functor)
但我覺得這樣使用起來還是沒有很方便,因為我還得要先宣告後才能使用
所以想請問是否有其他更好的設計呢?
謝謝!
程式碼(Code):(請善用置底文網頁, 記得排版)
http://ideone.com/25sbLf
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.135.238.148
→
05/16 04:25, , 1F
05/16 04:25, 1F
→
05/16 14:21, , 2F
05/16 14:21, 2F
→
05/16 19:33, , 3F
05/16 19:33, 3F