【问题标题】:C++ std::tr2 for VS2005VS2005 的 C++ std::tr2
【发布时间】:2010-09-06 05:41:45
【问题描述】:

Boost是VS2005用户体验TR2的唯一途径吗?还有只下载TR2相关包的傻瓜证明方法吗?

我正在查看 BoostPro Consulting 提供的 boost 安装程序。如果我为 MSVC8 的所有包选择所有线程选项的选项,则需要 1.1GB。虽然我不缺空间,但 需要超过 1 GB 的空间并且 BPC 需要很长时间才能赶上当前版本,这似乎很荒谬。

我需要什么包?我真的只对那些包含 std::tr2 的内容感兴趣,并且可以通过将提供的内容与 TR2 报告中的内容进行比较并从列表中选择那些内容来找出这一点,但即便如此,仍不清楚需要什么以及事实上,它背后的一个版本让我很恼火。

从之前遇到的 Boost (1.33.1) 中我知道,自编译是一种悲惨的体验:浪费了很多时间来启动它,然后一大堆错误在你的屏幕上传递的速度比你读的快,那又如何?你留下的是一种不安的感觉,有些东西坏了,但你不知道是什么。

我从来没有在任何 Apache 库中遇到过这些问题,但这是另一个抱怨......

【问题讨论】:

    标签: c++ boost visual-studio-2005 c++-tr2


    【解决方案1】:

    为自己编译 boost 库实际上非常简单,即使文档没有那么详细。该文档位于 jamroot 文件中。在 boost 根目录中运行 bjam --help 以获取详细的选项列表。例如,我使用以下命令行来构建我当前使用 boost 1.36.0 的设置:

    bjam --build-type=complete --toolset=msvc --build-dir=c:\boost\build install
    

    它在我的机器上运行了大约半小时,并将生成的文件放入 c:\boost

    【讨论】:

      【解决方案2】:

      TR1/TR2 中我最感兴趣的库是threads 和相关的atomics

      【讨论】:

        【解决方案3】:

        我相信您实际上指的是TR1,而不是TR2。 TR2 的提案征集已经公开,但在新的 C++ 标准出来之前不要期望看到太多动静。此外,尽管 boost 是 TR1 实现的提供者,但 dinkumware 和 GNU FSF 是其他提供者——在 VC2005 上,boost 可能是访问此功能的最简单方法。

        boost 中可能最重要的库是

        • 参考
        • 智能指针
        • 绑定
        • 类型特征
        • 数组
        • 正则表达式

        在最近的几个版本中,构建 boost 的文档一直在逐步完善,目前的 getting started guide 非常详细。智能指针和绑定,应该在头文件和 IMO 中工作,这些是 TR1 中最有用的元素。

        【讨论】:

          【解决方案4】:

          Boost 的部分优点在于所有代码都在头文件中。他们必须出于模板的原因。因此,下载代码并将其包含在您的项目中可能会起作用。 Boost 中有一些库确实需要编译,但只要你不需要这些......

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多