我有一个关于设计的问题。
我有一系列不属于同一个对象但作用于同一个复杂类型的泛型函数。
我正在考虑将它们分组为模板类作为静态成员函数,原因有两个:
a) 我可以将 typedefs 放入我的“命名空间类”中,这样代码更具可读性 b) 用户可以一劳永逸地对静态类进行 typedef,然后忘记专门化功能。
所以不要打电话:
myfunction< char,int,std::set<double> >(...);
他可以这样做:
typedef TheClass< char, int, std::set<double> > MyTheClass;
和写 :
MyTheClass::myfunction(...);
你会考虑这个糟糕的设计吗?为什么?
提前致谢 !