问题标签 [boost]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4268 浏览

c++ - “函数式”?

我在这里阅读了“functionoids”的描述。它们看起来像是 Boost::function 和 Boost::bind 的穷人版本。我错过了什么吗?如果您已经在使用 Boost,是否有充分的理由使用它们?

0 投票
3 回答
1311 浏览

c++ - 为什么 Boost 库返回“可转换为 `bool`”的东西,而不仅仅是返回 `bool`s?

有几次,在阅读 Boost 库的文档时,我遇到了标记为“可转换为bool”的返回值(在该页面中搜索短语“可转换为布尔”,它大约下降了三分之一)。我曾经偶然发现对一篇解释其原因的论文的倾斜引用,但从未能够找到该论文(而且我再也找不到我在其中看到引用的页面)。

谁能解释为什么(以及何时)您应该返回“可转换为bool”的东西,而不是简单地返回 a bool

0 投票
7 回答
2360 浏览

c++ - 评估 C++ 字符串中的表达式:“Hi ${user} from ${host}”

我正在寻找一种干净的 C++ 方法来解析包含包装在 ${} 中的表达式的字符串,并从以编程方式评估的表达式构建结果字符串。

示例:如果我实现程序让“user”评估为“foo”等,“来自 ${host} 的 Hi ${user}”将被评估为“来自 bar 的 Hi foo”等。

我正在考虑的当前方法包括一个状态机,它一次从字符串中读取一个字符,并在达到“}”后评估表达式。任何提示或其他建议?

注意: boost:: 是最受欢迎的!:-)

更新感谢前三个建议!不幸的是,我的例子太简单了!我需要能够检查 ${} 中的内容,所以这不是简单的搜索和替换。也许它会说 ${uppercase:foo} 然后我必须使用“foo”作为哈希映射中的键,然后将其转换为大写,但是在编写上面的原始问题时,我试图避免 ${} 的内部细节... :-)

0 投票
3 回答
6044 浏览

c++ - .访问冲突读取位置

我遇到了一个非常奇怪的问题。

代码如下:

我收到以下异常:

我已经检查了pImage,我确定什么时候graphics.DrawImage被调用,它不是NULL

  • 为什么会出现这样的问题?
  • 是什么0xfeeefef2
0 投票
3 回答
17053 浏览

c++ - Boost Asio serial_port - 需要 io 帮助

所以我一直在尝试学习 boost::asio 的东西,以便使用 RS232 与串行设备进行通信。文档很少,示例也不存在。无法弄清楚如何与设备进行通信。该设备无法发送数据,所以我需要做的就是编写,但其他项目需要实际的来回通信,因此将不胜感激。到目前为止我有什么代码。

简而言之:需要有关 serial_port 的 io 部分的帮助。

0 投票
6 回答
11824 浏览

c++ - 在 Boost Test 框架中测试 assert

我使用 Boost Test 框架对我的 C++ 代码进行单元测试,并想知道是否可以测试一个函数是否会断言?是的,听起来有点奇怪,但请耐心等待!我的许多函数在输入时检查输入参数,断言它们是否无效,对此进行测试会很有用。例如:

我希望能够做这样的事情:

您可以使用 Boost Test 检查抛出的异常,所以我想知道是否也有一些断言魔法......

0 投票
3 回答
966 浏览

c++ - boost::scoped_array 中 &p[0] 与 p.get() 的性能影响

该主题通常说明了一切。基本上是这样的情况:

在做:&p[0]和之间的性能上有什么明显的区别p.get()吗?

我问是因为我更喜欢第一个,它有一个更自然的指针,如语法。事实上,它使您可以用本机指针或数组替换 p 而不必更改任何其他内容。

我猜因为 get 是一个单行“ return ptr;”,编译器将内联它,我希望它足够聪明,能够以operator[]这样一种方式内联,即它能够不取消引用然后立即引用。

有人知道吗?

0 投票
1 回答
1708 浏览

c++ - 并行快速排序:使用 Boost Bind 进行递归?

我正在努力使快速排序并行,线程是第一次尝试。非线程版本正确排序,但线程不正确(这并不奇怪)。我发现有趣的是,当我删除线程但保留 boost::bind 调用时它仍然不起作用。如果 boost::bind 不是我想要的,请提出建议。Bind 似乎是使我的函数与 boost 线程一起工作的最简单(或唯一)的方法。

0 投票
5 回答
12743 浏览

c++ - 向 Python 公开 C++ API

我目前正在做一个项目,我必须用 Python 包装 C++ 类才能编写程序脚本。所以我的具体经验还涉及在我们的程序中嵌入 Python 解释器。

我尝试的替代方案是:

  • Boost.Python

    我喜欢 Boost.Python 生成的更简洁的 API,但它需要用户安装额外的依赖项这一事实使我们切换到 SWIG。

  • 痛饮

    SWIG 对我们来说的主要优势是它不需要最终用户安装它来使用最终程序。

你以前做过什么,你有什么经验?

0 投票
1 回答
1385 浏览

c++ - 为什么我不能将 boost::function 存储在 std::list 中?

我收到以下编译错误:

这是我的代码:

为什么会这样?我该如何解决?