我试图在oder中使用boost来计算factorial。我不知道为什么,但VS2013显示我编译错误。错误C2338:!boost :: is_integral <T> :: value with boost
任何人有一些想法吗?
int nLgCombi = 12;
std::vector<std::string> NbrToPlay;
...
int ne = NbrToPlay.size();
int calcnc = boost::math::factorial<int>(ne + 1)/boost::math::factorial<int>(nLgCombi);
错误消息:
ERREUR 1错误C2338:提高:: is_integral ::值d:\用户\ XXXXXX \下载\ boost_1_55_0b1 \ boost_1_55_0b1 \提升\数学\ special_functions \阶乘。 HPP 32 1个APPS
编辑:
代码由双取代INT:
double dcalcnc = boost::math::factorial<double>(ne +1)/boost::math::factorial<double>(nLgCombi);
错误消息:
ERREUR 1个错误C2039: 'assert_not_arg':n'est PAS membre德 '的boost :: MPL' d:\用户\ XXXXX \下载\ boost_1_55_0b1 \ boost_1_55_0b1 \提升\ MPL \ aux_ \预处理\平原\ arg.hpp 45 1
ERREUR 2错误C3861: 'assert_not_arg':identificateur introuvable d:\用户\ XXXXX \下载\ boost_1_55_0b1 \ boost_1_55_0b1 \提高\ MPL \ aux_ \预处理\平原\ arg.hpp 45 1
非常感谢,
个最好的问候,
Nixeus
请发布完整的错误消息。它包含有关什么时候出现“T”的信息。 – Angew
这里完成:) –