首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Win32 C++项目中找不到圆函数,即使使用cmath包括

在Win32 C++项目中找不到圆函数,即使使用cmath包括
EN

Stack Overflow用户
提问于 2015-06-11 09:05:22
回答 2查看 2.6K关注 0票数 0

我创建了一个空白的Win32 C++项目。即使我包括math.h或cmath.h库,编译器仍然会为圆函数提供未定义的C3861错误。

我试过以下几种方法

代码语言:javascript
运行
复制
1. adding the /TC compile as C++ and using cmath
2. adding the include _MATH_DEFINES_DEFINED 
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-06-11 09:15:41

Visual 2012 (MSVC11.0)并不严格遵循C++11,因此它可能没有std::圆形。

使用

代码语言:javascript
运行
复制
inline double round(double value) { return value < 0 ? -std::floor(0.5 - value) : std::floor(0.5 + value); }
// analogously for float
票数 0
EN

Stack Overflow用户

发布于 2015-06-11 09:10:10

你是想转成整数吗?

std::round()不返回int值,

相反,试着:

代码语言:javascript
运行
复制
int a = int(std::floor(var + 0.5));

有关更多解释:http://en.cppreference.com/w/cpp/numeric/math/round

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30776273

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档