如何在C ++中通过表达式定义常量?

时间:2013-11-19 07:23:34

标签: c++ c++11

我需要这样的一些:

const float ratio = 1/60;

怎么做?

4 个答案:

答案 0 :(得分:9)

正如您所做的那样,但告诉编译器表达式中的值是带有" f"的浮点数。后缀

const float ratio = 1.0f/60.0f;

答案 1 :(得分:7)

您真的不需要constexpr,这可以在CC++中使用:

const float ratio = 1./60;

答案 2 :(得分:5)

如果您需要一个比率,而不是一个比率,您可以使用std::ratio

constexpr one_sixtieth = std::ratio<1, 60>();

constexpr auto n = one_sixtieth.num;
constexpr auto d = one_sixtieth.den;

附带一组useful compile time operations

答案 3 :(得分:0)

你试试这个

const float numerator =1;
const float denominator =60;
const float ratio = numerator/denominator;