0

我知道这已被问过数百万次,但我仍然找不到解决方案。

我正在使用 OSX 10.8、boost 1.50、xcode 4.5.1。

  • 我使用 macports 安装了 boost。
  • 创建了一个空的 xcode 项目。我的 main.cpp 包含以下代码
    #include “升压/容器/deque.hpp”
    int main(int argc, char *argv[])
    {
        boost::container::deque d(12, 5.5f);
        返回0;
    }

  • 更新了“标题搜索路径”以指向“/opt/local/include”
  • 更新了“库搜索路径”以指向“/opt/local/lib”
  • 尝试更改“c++ 语言方言”、“c++ 标准库”和其他设置,但完全没有成功。

当我构建项目时,我在 allocator_traits.hpp 和 deque.hpp 中遇到与语义问题相关的错误,我不知道为什么。恐怕当我开始使用更多的 boost 库时,会弹出更多的错误。

deque.hpp(第 482 和 483 行)
基本说明符必须是类名(ptr_alloc_t 和 allocator_type)

我还需要做什么来配置boost。为什么使用 boost 这么复杂?

4

1 回答 1

2

boost::container::deque是一个模板类,你必须指定你使用哪种类型。在您的情况下,这是float

boost::container::deque<float> d(12, 5.5f);

您可以在此处阅读有关模板的更多信息

于 2012-10-21T06:45:28.213 回答