
BOOST_STATIC_CONSTANT(bool,value = (sizeof(check(((make<Lhs>() BOOST_TT_TRAIT_OP make<Rhs>()),make<has_operator>())))==sizeof(::boost::type_traits::yes_type)));
../../boost_1_48_0/boost/type_traits/detail/has_binary_operator.hpp:157:4:
error: expected Expression [1]
尝试后,由于我无法真正了解这些错误,我注意到,如果我从
#import <Cocoa/Cocoa.h>#include <boost/type_traits.hpp>
至
#include <boost/type_traits.hpp>#import <Cocoa/Cocoa.h>
事情神奇地工作.我很困惑,因为它与以前的升级版本一样很好,我不知道为什么会发生这种情况.关于可能发生什么的任何想法?
谢谢!
解决方法 我本质上有同样的问题,并且从ildjam的线索,我找到了原因和解决.(可怕)宏名称是检查,在AssertMacros.h中定义.根据该文件中的意见,未来苹果将删除旧名称.现在,苹果公司已经添加了一个解决方法,以便在处理AssertMacros.h之前,将旧名称定义为__ASSERT_MACROS_define_VERSIONS_WITHOUT_UNDERscoreS为0.例如
#define __ASSERT_MACROS_define_VERSIONS_WITHOUT_UNDERscoreS 0#import <Cocoa/Cocoa.h>
如果您使用前缀文件,那么可以将定义放在那里.或者,直接解决方法是在包含type_traits.hpp之前进行undef检查.
#ifdef check#undef check#endif#include "boost/type_traits.hpp"
(细节提交给Boost Trac:https://svn.boost.org/trac/boost/ticket/6219)
总结以上是内存溢出为你收集整理的c:Boost 1.48型特征和Cocoa包含怪异全部内容,希望文章能够帮你解决c:Boost 1.48型特征和Cocoa包含怪异所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)