boost-function相关内容

boost::function 和 boost::bind 如何工作

我不喜欢在我的代码中散布魔术盒...这两个类究竟如何工作以允许基本上任何函数映射到函数对象,即使函数具有完全不同的参数设置为一个我传递给 boost::bind 它甚至适用于不同的调用约定(即成员方法在 VC 下是 __thiscall,但“正常"函数通常是 __cdecl 或 __stdcall对于那些需要兼容 C 的. 解决方案 boost::function 允许任何带有 op ..
发布时间:2021-12-24 15:04:41 C/C++开发

如何使用boost :: spirit解析数学表达式并将其绑定到函数

我想定义一个带有2个参数的函数 double func(double t, double x); 从外部文本文件中读取实际实现. 例如,在文本文件中指定 function = x*t; 该函数应实现x和t之间的乘法,以便可以在以后的阶段调用它. 我正在尝试使用boost :: spirit解析函数.但我不知道该如何实际实现. 下面,我创建了一个实现乘法的简单 ..
发布时间:2020-09-22 05:09:07 C/C++开发

什么时候使用std :: function而不是继承?

在某些情况下, std :: function 可以替换继承。以下两个代码片段非常相似(在调用函数时大致相同的成本,在签名中使用几乎相同,并且在大多数情况下,std :: function不需要我们额外复制 A 以及): struct函数 { virtual int operator (int)const = 0; }; struct A :public Function ..
发布时间:2016-11-05 22:33:51 C/C++开发

在线程池中与boost :: function用法相关的崩溃

我想使用pthread在C ++中实现线程池。我想封装与线程管理相关的逻辑在一个对象,这是获取这些线程的所有权。这意味着每当这个对象被销毁,线程必须被停止和清理。 我一直在测试我的代码,结果是当我销毁WorkerThreadManager对象,同时有boost :: function调用。从GDB中查看代码和回溯。我真的不明白为什么会发生,据我知道boost :: function是可复制的 ..
发布时间:2016-11-01 22:08:25 C/C++开发

boost绑定类函数指针

class Foo { double f1(int x,std :: string s1); double f2(int x,SomeClass s2); } 我想要能绑定Foo.f1的s1没有foo的实例 typedef double(Foo :: * MyFooFunc)(int) MyFooFunc func1 = boost :: bind(& ..
发布时间:2016-10-27 22:53:11 C/C++开发

tr1 :: function swallow可以返回值吗?

boost ::函数常见问题3 3 特别针对场景我对以下感兴趣: 为什么void 返回值有解决方法? C ++允许他们! Void返回 是C ++标准允许的,在此代码片段中为 : void f ); void g(){return f(); } 这是 boost :: function的有效用法,因为void返回 不使用。使用void返回,我们 将尝试编 ..
发布时间:2016-10-23 22:38:53 C/C++开发

Boost.Lambda - 解引用占位符

有没有办法取消引用的lambda前pression?占位符的 的boost ::功能< INT(MyClass的*)> F = _1-> myMethod的(); F(myObject的); 我知道我可以做一个绑定:的boost ::功能< INT(MyClass的*)> F =的boost ::绑定(放大器; MyClass的:: myMethod的,_1); ..
发布时间:2016-08-12 19:02:59 C/C++

有什么不对本的boost ::拉姆达::绑定使用情况如何?

这是一个错误在这个code?我不断收到编译错误。基本上我想一个void返回功能连接到具有非void返回类型的信号。 升压版本:版本1.46.1 的#include<升压/ signals2.hpp> #包括LT&;升压/λ/ bind.hpp> #包括LT&;升压/λ/ lambda.hpp> 使用空间boost :: signals2;无效FUNC() { 的pr ..
发布时间:2016-08-12 18:46:45 C/C++