Re: [語法] STL sort 在一個 Class 裡面含很多priv …
看板C_and_CPP (C/C++)作者Fenikso (ばかちーは俺の嫁)時間16年前 (2009/10/05 17:34)推噓13(13推 0噓 58→)留言71則, 4人參與討論串4/6 (看更多)
※ 引述《minazukimaya (水無月真夜)》之銘言:
: 加上getXXX()的做法也是每加一次要改一次model啊..
: 同樣都是汙染原本的class
: 為什麼你為認為加十個getter比加一個template function汙染得少呢?
: 要提取class其中的private成員 本來就勢必要在class裡面加東西
: 兩者的差別只在你加的是member function還是template member function而已
: : → adrianshum:根本和寫十個 compare_by_Xxx() compare_by_Yyy() 無異 10/05 16:53
: class LessThanByXXX {
: public:
: bool operator() (GNF& lhs,GNF& rhs) { return lhs.getXXX()<rhs.getXXX();}
: };
: 這樣寫十個 和
: template <GNF::SortBy T>
: class LessThanBy {
: public:
: bool operator() (GNF& lhs,GNF& rhs) { return lhs.getAttr<T>() < rhs.getAttr<T> ();}
: }
: 寫十個前者到底哪裡比較好..
: 除了增加code的長度和降低維護性之外..
: 寫十個functor然後每個functor只差9個字元 這樣真的比較好嗎
但是你沒有必要用enum做這件事
template<typename T, T (GNF::*getter)() const>
class LessThanBy {
public:
bool operator() (const GNF& a, const GNF& b) {
return (a.*getter)() < (b.*getter)();
}
};
這樣就好了
enum根本是多此一舉
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.133.186.66
推
10/05 17:36, , 1F
10/05 17:36, 1F
→
10/05 17:36, , 2F
10/05 17:36, 2F
→
10/05 17:36, , 3F
10/05 17:36, 3F
→
10/05 17:37, , 4F
10/05 17:37, 4F
→
10/05 17:37, , 5F
10/05 17:37, 5F
→
10/05 17:38, , 6F
10/05 17:38, 6F
→
10/05 17:38, , 7F
10/05 17:38, 7F
→
10/05 17:38, , 8F
10/05 17:38, 8F
→
10/05 17:39, , 9F
10/05 17:39, 9F
→
10/05 17:39, , 10F
10/05 17:39, 10F
推
10/05 17:43, , 11F
10/05 17:43, 11F
推
10/05 17:43, , 12F
10/05 17:43, 12F
→
10/05 17:43, , 13F
10/05 17:43, 13F
→
10/05 17:43, , 14F
10/05 17:43, 14F
→
10/05 17:44, , 15F
10/05 17:44, 15F
→
10/05 17:44, , 16F
10/05 17:44, 16F
→
10/05 17:44, , 17F
10/05 17:44, 17F
→
10/05 17:44, , 18F
10/05 17:44, 18F
→
10/05 17:45, , 19F
10/05 17:45, 19F
→
10/05 17:45, , 20F
10/05 17:45, 20F
→
10/05 17:45, , 21F
10/05 17:45, 21F
→
10/05 17:45, , 22F
10/05 17:45, 22F
→
10/05 17:45, , 23F
10/05 17:45, 23F
→
10/05 17:46, , 24F
10/05 17:46, 24F
→
10/05 17:46, , 25F
10/05 17:46, 25F
→
10/05 17:47, , 26F
10/05 17:47, 26F
→
10/05 17:47, , 27F
10/05 17:47, 27F
推
10/05 17:50, , 28F
10/05 17:50, 28F
推
10/05 17:51, , 29F
10/05 17:51, 29F
→
10/05 17:51, , 30F
10/05 17:51, 30F
→
10/05 17:52, , 31F
10/05 17:52, 31F
→
10/05 17:52, , 32F
10/05 17:52, 32F
→
10/05 17:53, , 33F
10/05 17:53, 33F
→
10/05 17:53, , 34F
10/05 17:53, 34F
推
10/05 17:53, , 35F
10/05 17:53, 35F
→
10/05 17:53, , 36F
10/05 17:53, 36F
→
10/05 17:54, , 37F
10/05 17:54, 37F
推
10/05 17:59, , 38F
10/05 17:59, 38F
→
10/05 18:00, , 39F
10/05 18:00, 39F
→
10/05 18:00, , 40F
10/05 18:00, 40F
→
10/05 18:01, , 41F
10/05 18:01, 41F
→
10/05 18:01, , 42F
10/05 18:01, 42F
→
10/05 18:01, , 43F
10/05 18:01, 43F
→
10/05 18:02, , 44F
10/05 18:02, 44F
推
10/05 18:08, , 45F
10/05 18:08, 45F
推
10/05 18:11, , 46F
10/05 18:11, 46F
→
10/05 18:11, , 47F
10/05 18:11, 47F
→
10/05 18:12, , 48F
10/05 18:12, 48F
→
10/05 18:12, , 49F
10/05 18:12, 49F
→
10/05 18:13, , 50F
10/05 18:13, 50F
→
10/05 18:15, , 51F
10/05 18:15, 51F
推
10/05 18:18, , 52F
10/05 18:18, 52F
→
10/05 18:19, , 53F
10/05 18:19, 53F
→
10/05 18:24, , 54F
10/05 18:24, 54F
→
10/05 18:25, , 55F
10/05 18:25, 55F
推
10/05 18:25, , 56F
10/05 18:25, 56F
→
10/05 18:25, , 57F
10/05 18:25, 57F
→
10/05 18:27, , 58F
10/05 18:27, 58F
→
10/05 18:27, , 59F
10/05 18:27, 59F
→
10/05 18:28, , 60F
10/05 18:28, 60F
推
10/05 18:31, , 61F
10/05 18:31, 61F
→
10/05 18:31, , 62F
10/05 18:31, 62F
推
10/05 19:39, , 63F
10/05 19:39, 63F
→
10/05 19:40, , 64F
10/05 19:40, 64F
→
10/05 19:40, , 65F
10/05 19:40, 65F
→
10/05 19:40, , 66F
10/05 19:40, 66F
→
10/05 19:41, , 67F
10/05 19:41, 67F
→
10/05 19:42, , 68F
10/05 19:42, 68F
→
10/05 19:42, , 69F
10/05 19:42, 69F
→
10/05 19:42, , 70F
10/05 19:42, 70F
→
10/05 19:44, , 71F
10/05 19:44, 71F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 4 之 6 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章