使用模板在编译时计算float

1 c++ templates

我是C++混乱的整个模板元编程的新手,我根本无法做到这一点.

场景:例如,我有分数2/5,6/9,...我想在编译时计算这些分数的结果,并在运行时使用该值对它们进行排序.

这甚至可能吗?宏可能吗?

编辑: 谢谢Naveen,但如果可以使用模板在编译时计算浮点数,它就不回答这个问题.例如,使用递归.

我在网上找不到任何信息:/

Nav*_*een 5

您不需要模板.当你做这样的事情时,任何体面的编译器都会优化计算:float f = 2.0/5;BTW,如果所有都是编译时变量,你为什么要在运行时对它们进行排序?