Использование пустых буст :: аккумуляторов

Как проверить пустой буст :: аккумуляторы акк или нет?

Например:

if (acc.isEmpty())//I don't know what function here
return 0;
else
return boost::accumulators::mean(acc).

Потому что, если он пуст, я получаю NaN для boost :: аккумуляторы :: mean (acc).

2

Решение

Вы могли бы использовать аккумулятор count:

if (boost::accumulators::count(acc) == 0)//I don't know what function here
return 0;
else
return boost::accumulators::mean(acc);

Кроме того, вы можете просто проверить, если это nan позвонив std::isnan:

 if(std::isnan(boost::accumulators::mean(acc))
return 0;
else
return boost::accumulators::mean(acc);
3

Другие решения


По вопросам рекламы [email protected]