我复制了一个编译并运行良好的代码,从一台计算机到另一台计算机,我正确地安装了GMP库。我想通过g++ -o code -I/path/to/library code.cpp -lgmpxx -lgmp
编译代码,我收到错误invalid suffix '_mpf' on floating constant
。显然我使用的是_mpf
,我不明白为什么我的代码在一台计算机上编译并运行正常而另一台计算机运行正常。
答案 0 :(得分:3)
User-defined suffixes是C ++ 11的一项功能。将-std=c++11
添加到编译器调用中。
您没有从尝试定义这些运算符的标头中收到错误,因为只有在您使用C ++ 11支持进行编译时,运算符才是conditionally compiled。