问题标签 [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 回答
12050 浏览

c++ - 一般来说,boost bind 在幕后是如何工作的?

在不花很长时间查看 boost 源代码的情况下,有人可以快速了解一下 boost 绑定是如何实现的吗?

0 投票
2 回答
5573 浏览

delegates - 如何在 C++/CLI 中使用 boost::bind 绑定托管类的成员

我在本机 C++ 类中使用 boost::signal,现在我正在 C++/CLI 中编写一个 .NET 包装器,以便我可以将本机 C++ 回调公开为 .NET 事件。当我尝试使用 boost::bind 获取托管类的成员函数的地址时,我收到编译器错误 3374,说除非我创建委托实例,否则我无法获取成员函数的地址。有谁知道如何使用 boost::bind 绑定托管类的成员函数?

为澄清起见,以下示例代码会导致编译器错误 3374:

0 投票
3 回答
10540 浏览

c++ - 使用 boost 库的多线程

希望同时多次调用一个函数。我希望使用线程来调用一个函数,该函数将充分利用机器的能力。这是一台8核的机器,我的要求是使用机器cpu从10%到100%以上。

我的要求是使用 boost 类。有什么方法可以使用 boost 线程或线程池库来完成此任务吗?或者其他方式来做到这一点?

另外,如果我每次都必须调用具有不同参数的多个函数(使用单独的线程),那么最好的方法是什么?[使用boost或不使用boost]以及如何?

以上不起作用,我不确定为什么?:-(

0 投票
2 回答
22777 浏览

c++ - boost::bind 与具有引用参数的函数绑定

我注意到,当将引用参数传递给 boost 绑定时,这些参数不会像引用一样起作用。相反,boost 创建了成员的另一个副本,并且原始传入的变量保持不变。

当我更改对指针的引用时,一切正常。

我的问题是:

是否有可能获得工作引用,或者至少在尝试使用引用参数时给出编译错误?

0 投票
3 回答
1701 浏览

c++ - 更自然的 boost::bind 替代方案?

不要误会我的意思:Boostbind()很棒。

但是我确实讨厌用它来编写和阅读代码,而且我已经放弃了希望我的同事们会摸索/使用它的希望。

我最终得到这样的代码:

这虽然合乎逻辑,但与我所说的好代码相去甚远。

为了演示......在 C++1x 中,我们将拥有:

一个好的 DSL 可能看起来像这样:

你如何处理 C++ 中的绑定?你只是生活在什么提升给你?

0 投票
1 回答
63175 浏览

c++ - boost::function 和 boost::bind 是如何工作的

我不喜欢魔术盒散布在我的代码中......这两个类究竟如何工作以允许基本上任何函数映射到函数对象,即使函数<>具有与传递给的那个完全不同的参数集boost::bind

它甚至可以使用不同的调用约定(即成员方法__thiscall在 VC 下,但“普通”函数通常是__cdecl__stdcall用于那些需要与 C 兼容的函数。

0 投票
2 回答
405 浏览

c++ - 增强 lambda 困惑

为什么回调只调用一次?

0 投票
3 回答
1108 浏览

c++ - 使用 boost::function 和 boost::bind 确定仿函数中的对象和方法

我想获得指向该对象的指针,以及该函子将从使用 boost::function 和 boost::bind 构造的函子中调用的方法的指示。这将允许我自动确定必须执行哪些函子的顺序。

以下(伪)代码(请参阅POINTER_OFMETHOD_OF)显示了我正在尝试做的事情:

提前致谢!

0 投票
2 回答
486 浏览

c++ - 调用具有传递给应用程序的不同线程数的函数

我有一个函数,每次都需要用不同数量的线程调用(我正在做一些性能计算,所以需要知道性能何时开始恶化)。示例如下:

其中,nThreads:在命令行中给出的值

我的问题是,这是否会给我想要的结果,至于每次程序访问 for 循环时是否会使用“nThreads”调用“getTime”函数?还是我需要一些其他方法来找出相同的?

我真正想做的是:

(不确定以上哪个是正确的。)

getTime() 函数将以我从文本文件中获取的指定行数运行,并将每一行提供给我希望计算其性能的 api。但这与我的问题无关。

我希望每次调用具有不同线程数的函数并计算每个线程完成的时间。1 个线程所花费的总时间是多少,2 个线程完成所花费的总时间是多少,等等。

0 投票
3 回答
1394 浏览

c++ - boost::bind 和返回 auto_ptr 的成员函数的问题

为什么这段代码无法用 VS 2005 编译:

出现此警告和错误:

?

将 IntType typedef 更改为只是一个 int 允许它编译。