基于枚举模板是一个好主意吗?

Adi*_*tya 6 c++ enums uniqueidentifier

我正在编写一个独特的ID生成器,它具有不同的生成Id的策略,这些策略在一天,一周或一个月内是唯一的.我不想用虚函数机制创建类的层次结构

正在做类似下面的代码片段,这是一个好主意吗?有什么建议?

enum Duration { Day, Week, Month };

template <Duration d>
class IDGenerator
{
   generateId();
}
Run Code Online (Sandbox Code Playgroud)

sha*_*oth 5

是的,它是可以接受的,如果编译时多态性足够你将只使用文件- 你将节省虚拟调用,这将允许更好的编译器coptimizations.