问题标签 [boost-bind]

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 投票
3 回答
2809 浏览

c++ - 使用 boost::function::target 获取函数指针时的空指针

阅读此答案后,我认为我有一个解决方案。至少答案是我想做的,但我在实施时遇到了问题。

这是我正在尝试做的事情的大纲

程序编译时没有错误或警告,但我得到一个从 f.target() 返回的空指针 (fpt);在运行时。从上述 stackoverflow 问题上链接的引用看来,如果 boost 无法执行运行时转换,则似乎返回了一个空指针。但我不知道为什么 Boost 可能无法执行运行时转换。有任何想法吗?

0 投票
1 回答
652 浏览

c++ - 访问 boost::function 参数

是否可以访问 boost::function 类型中包含的参数?

我希望能够检索要调用的函数的地址,以及为该函数提供的参数的值。

0 投票
3 回答
396 浏览

c++ - boost::bind 访问器?

假设我有以下代码:

从 SomeFunc() 函数中,是否可以访问绑定类型所持有的参数?像这样的东西(伪代码):

我可以从 boost::bind 类型中提取这些信息吗?

0 投票
2 回答
1876 浏览

c++ - 帮助提升绑定/功能

我有这个必须匹配的函数签名

这是我到目前为止所拥有的:

但是,在lua_register(_luaState...,它仍然在抱怨转换问题

错误 1 ​​错误 C2664: 'lua_pushcclosure' : 无法将参数 2 从 'boost::function' 转换为 'lua_CFunction'

有谁知道如何解决这个问题?

0 投票
3 回答
3874 浏览

c++ - 使用 boost::bind 排序

我是一个boost新手。我正在学习使用 boost::bind,我想对一个整数向量进行排序,并去掉向量中大于 45 且小于 5 的所有元素。很难做到。如果有人可以帮助我做到这一点会很棒吗?

我面临问题的原因是因为我试图在迭代向量以对其进行排序时摆脱向量元素。我知道如果我先对其进行排序然后从中删除元素会容易得多。但我想这样做。任何帮助表示赞赏。

0 投票
5 回答
12127 浏览

c++ - 从 boost::threaded 成员函数获取返回值?

我有一个像下面这样的工人阶级:

它旨在与 boost::thread 和 boost::bind 一起执行,例如:

我的问题是,如何获得 Worker::Do 的返回值?

提前致谢。

0 投票
1 回答
7953 浏览

c++ - boost绑定编译错误

我收到如下错误:

有人可以告诉我我做错了什么吗?

0 投票
2 回答
1119 浏览

c++ - 在单个 slot_type 上使用多个 boost::connect 的内存泄漏

当我boost::signals尝试将多个信号连接到单个slot_type. 我已经在各种论坛上看到过同样的泄漏报告,但找不到任何提及正确方法或任何解决方法的信息。

我正在尝试做的事情:

我正在尝试将结果传递boost::bind()给函数。在此功能中,我想将多个信号连接到该结果。第一个连接工作正常,但第一个连接之后的每个连接都会泄漏一个句柄。

这是一些示例代码:

现在打电话CallingClass::connectSignals()

我希望调用connectToSlots将 50 个信号连接到一个插槽,然后断开并清理所有这些信号。实际发生的是 1 个信号完全清除,然后其余 49 个信号部分清除,但泄漏了一些内存。

将插槽传递给函数以多次使用的正确方法是什么?任何帮助,将不胜感激。

谢谢,克里斯

0 投票
1 回答
2603 浏览

c++ - C++:如何使用 std::less使用 boost::bind 和 boost::lambda?

我正在尝试精简 boost::bind、boost::lambda 库以及它们如何与 STL 算法一起使用。假设我有按 int 键排序的 int-string 对向量。然后可以找到在保持向量排序的同时插入新对的位置,如下所示:

现在我想operator<用一个函数对象(std::less<int>本例中的类型)替换:

如何更改上面的代码以使其正常工作?我不能只是做

因为std::less<int>::operator()不接受boost::bind. 我在这里想念什么?TIA

0 投票
2 回答
635 浏览

c++ - boost::function 对象容器上的 STL 算法

我有以下使用 for 循环的代码,我想使用转换,或者至少使用 for_each,但我不知道如何。

稍后在代码中,我实际上想调用这个空函数对象的集合。我在这里也使用了 for 循环,似乎我应该能够以某种方式使用 for_each。