加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何强制xcode使用正确的iostream标头c

发布时间:2020-12-14 17:29:58 所属栏目:百科 来源:网络整理
导读:xcode 4.2os x 10.7 当我设置我的包括看起来像: #include iostream#include boost/thread.hpp 我从位于/ opt / local / include / boost / tr1 / tr1的文件中收到以下错误 Lexical or Preprocessor Issue'boost/tr1/detail/config_all.hpp' file not found
xcode 4.2
os x 10.7

当我设置我的包括看起来像:

#include <iostream>
#include <boost/thread.hpp>

我从位于/ opt / local / include / boost / tr1 / tr1的文件中收到以下错误

Lexical or Preprocessor Issue
'boost/tr1/detail/config_all.hpp' file not found

/ opt / local / include / boost / tr1 / tr1 / iostream文件的内容:

//  (C) Copyright John Maddock 2005.
//  Use,modification and distribution are subject to the
//  Boost Software License,Version 1.0. (See accompanying file
//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
//
//  This file exists to prevent std lib headers from accidentally
//  including a TR1 extention header; we must suppress this otherwise
//  we can end up with cyclic dependencies with some std lib implementations.
//
#ifndef BOOST_TR1_iostream_INCLUDED
#  define BOOST_TR1_iostream_INCLUDED
#  ifndef BOOST_TR1_NO_RECURSION
#     define BOOST_TR1_NO_RECURSION
#     define BOOST_TR1_NO_iostream_RECURSION
#  endif
#  include <boost/tr1/detail/config_all.hpp>
#  if defined(BOOST_HAS_INCLUDE_NEXT) && !defined(BOOST_TR1_DISABLE_INCLUDE_NEXT)
#     include_next <iostream>
#  else
#     include BOOST_TR1_STD_HEADER(iostream)
#  endif
#  ifdef BOOST_TR1_NO_iostream_RECURSION
#     undef BOOST_TR1_NO_iostream_RECURSION
#     undef BOOST_TR1_NO_RECURSION
#  endif
#endif

我应该使用位于/Developer/SDKs/MacOSX10.7.sdk/usr/include/c /4.2.1/的iostream标头

你将不得不原谅我,因为我对c很新,甚至更新xcode.预先感谢您的任何帮助.

解决方法

绝对关闭递归搜索.如果没有指定完整的提升路径,您永远不能包含boost标头.很多Boost都是最终会成为标准的功能的训练基础,因此有很多Boost标题与标准标题共享同一个名称.还有一堆与其他boost标题共享同一名称的boost标头.这将导致你的悲伤无止境.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读