由__gcd()函数引发的讨论
新人,最近想起来了*__gcd()*函数,想写几个应用它的模板
可是第一个代码就出了问题
环境:Win10 VS2017
部分代码:(第一次用csdn,不怎么会用,诶嘿)
- #include
- #include
- using namespace std;
- bool is_prime(int x)
- {
- if(__gcd(x,1)==1)
- return 1;
- return 0;
- }
如上中的__gcd()函数在Win10 vs2017里报错“未找到标识符”
后实验了安装了gnu,c++插件的vscode也同样报错了。
翻了一圈csdn之后,只找到了一个同样的,悬而未解的问题。
后查询__gcd()函数相关信息之后为vs2017链接了gsl/gsl_f.h库,同样报错
vscode(尝试了clang和mingw)添加了gnu插件报错
然后又看到了gcd函数出自“algorithm”库的言论
尝试验证发现至少对于vs2017并不是这样
在后复制了vs2017外部依赖项“algorithm”全文后放入word查询
并未出现有关gcd的任何结果
翻阅c++14,17标准未确认到gcd函数的删除
(使用牛客online ide在c++11下,可以include “algorithm”库后使用,所以确认c++11标准未移除)
蒻雞只能到这里了
希望各位大佬给个答案
为什么
vs2017加载号称可以使用__gcd函数的“algorithm”库后不能使用__gcd函数呢。