标题:如何在定义了max()宏的条件下,调用valarray封装的max()函数
只看楼主
lsrwan
Rank: 2
等 级:论坛游民
帖 子:31
专家分:17
注 册:2009-10-11
结帖率:90%
 问题点数:0 回复次数:1 
如何在定义了max()宏的条件下,调用valarray封装的max()函数
在程序中调用valarray对象的max函数如下valarray<float> a(3); a[0] = 1;a[1] =2;a[2] = 3;
float fmax = a.max();
以上代码发现无法编译通过,后来发现是由于 c++定义了max宏,问各位针对这种情况如何解决。
修改为float fmax = std::a.max();也不可以。
搜索更多相关主题的帖子: valarray max 函数 定义 条件 
2010-05-13 21:12
lsrwan
Rank: 2
等 级:论坛游民
帖 子:31
专家分:17
注 册:2009-10-11
得分:0 
还是我自己给答案吧,后来想出了个办法
#ifdef max
#undef max
fmax = a.max()
#endif
即可。
2010-05-14 22:16



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-306560-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.957537 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved