Qt5出现错误'acosh'不是'std'的成员怎么办

这篇文章主要介绍“Qt5出现错误'acosh'不是'std'的成员怎么办”,在日常操作中,相信很多人在Qt5出现错误'acosh'不是'std'的成员怎么办问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Qt5出现错误'acosh'不是'std'的成员怎么办”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

站在用户的角度思考问题,与客户深入沟通,找到四平网站设计与四平网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、做网站、企业官网、英文网站、手机端网站、网站推广、域名与空间、网络空间、企业邮箱。业务覆盖四平地区。

错误: jsruntime/qv4mathobject.cpp:152:26:错误:'acosh'不是'std'的成员
jsruntime/qv4mathobject.cpp:152:26:错误:'asinh'不是'std'的成员
jsruntime/qv4mathobject.cpp:152:26:错误:'atanh'不是'std'的成员
……
主要问题是GCC版本太低,对标准支持不全的原因,解决办法是:
打开qt-everywhere-src-5.13.0/qtdeclarative/src/qml/jsruntime/qv4mathobject.cpp
修改149行这里:
#ifdef Q_OS_ANDROID // incomplete std :-(
RETURN_RESULT(Encode(std::log(v +std::sqrt(v + 1) * std::sqrt(v - 1))));
#else
RETURN_RESULT(Encode(std::acosh(v)));
#endif

改成
RETURN_RESULT(Encode(std::log(v +std::sqrt(v + 1) * std::sqrt(v - 1))));

整个文件,依次类推,所有的宏都取
#ifdef Q_OS_ANDROID // incomplete std :-(

#else
之间的

然后,删除368行的:
#if !defined(__ANDROID__) using std::log1p; #endif

到此,关于“Qt5出现错误'acosh'不是'std'的成员怎么办”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


新闻标题:Qt5出现错误'acosh'不是'std'的成员怎么办
分享路径:http://hbruida.cn/article/pjdssj.html