草庐IT

内包装

全部标签

c++ - 尝试为 Windows API 包装器实现事件处理程序时遇到问题

friend们,我正在尝试实现一个WindowsAPI的包装器,我想从父窗口捕获子窗口事件,所以我做了一个简单的事件处理程序。我使用函数指针来存储回调函数。我是用静态函数做的。请参阅下面的代码。classWidget;typedefvoid(*EventProc)(MSG*EventArgs);classWidget{public:///ConstructorsdestructorandmethodsforRegisteringandCreatingWindowsstaticLRESULTCALLBACKMainProc(HWNDhWnd,UINTmsg,WPARAMwParam,LP

用于具有导数的 GSL 根查找算法的 C++ 包装器

因此,虽然我很高兴在StackOverflow上找到了很多答案,但我决定是时候自己问一个问题了。我正在尝试使用arootfindingalgorithmwithderivatives.根据GSL,我必须提前定义函数及其导数。但我想知道是否可以使用包装器更优雅地完成此操作。前段时间我发现了一个非常方便的template(GSLC++wrapper)这适用于一个功能,例如集成并且我大量使用它。现在我想知道是否可以扩展这种方法为GSL提供两个函数,即函数本身及其派生函数。编辑:解决方案templateclassgsl_root_deriv:publicgsl_function_fdf{pri

python - 用 cython 包装 C++ 类,让基本示例正常工作

我正在尝试了解如何使用cython包装C++代码。为了做到这一点,我从cython网页上的基本C++示例开始,可在此处找到:http://docs.cython.org/src/userguide/wrapping_CPlusPlus.html这看起来很简单,但我无法让它工作。这是我所做的:Rectangle.h和Rectangle.cpp是直接从网页复制过来的矩形.h:namespaceshapes{classRectangle{public:intx0,y0,x1,y1;Rectangle(intx0,inty0,intx1,inty1);~Rectangle();intgetLe

c++ - 如何编写一个不断敲击输出的包装器?

基本上,我想做的是在一些抽象类上有一个包装器,然后用相同的包装器类包装该类的任何成员函数的输出。继续这样做,以便始终包裹所有对象。喜欢(预设代码)wrap(multiply,2)(divide,3)(plus,5)(inverse)(collectfirst10).unwrap()除了最后一行之外,上面的所有行都输出了一些东西。它现在似乎意义不大,但我相信我们可以在上面应用有趣的东西,比如:wrapdat;dat.splitIntoThreads(2)(thingA).clone()(thingB)(thing1)(thingC)(thing2)(thingD)(thing3).not

c++ - 对类型的非常量左值引用 - 使用 Class 类型的参数时 Objective-C++ 包装器中的错误

我有两个用Objective-C++编写的包装器类,用于它们等效的C++类。我们称它们为OABCClass和OXYZCallbackInterface。现在我在C++(ABCClass)中有一个方法,其中一个参数是一个接口(interface)-XYZCallbackInterface。例如:std::stringmethodWithArguments(std::stringreq,CommonNamespace::XYZCallbackInterface&callback);在我的Objective-C++包装器类中,即OABCClass我对上述C++方法的方法实现如下所示:-(NS

c++ - opencl c++ API 包装器中的 clFinish 等价物是什么?

我是opencl的新手,但我对GPU编程并不陌生。我需要确保我的cpu和gpu设备相互同步。看来我应该使用clFinish(cl::commandqueuequeue),但我使用的是openclc++而不是openclc。那么,cl::finish()是否等同于clFinish()还是有类似cl::commandqueue::finish()的东西(哪个VisualStudio无法识别)?您能否举例说明您的答案?我是opencl的新手。 最佳答案 cl::command_queue::finish就是您要找的那个。cl_intfin

c# - 将 boost::signal 包装到 C# 委托(delegate)

假设我有一个异步库,用nativeC++编写,具有与此类似的接口(interface):classconnection{public:boost::signalsig_connection_made;boost::signalsig_error;voidconnect(conststd::string&host,conststd::string&port);};我想用C#包装。有谁知道使用SWIG或类似东西的方法可以让我将信号绑定(bind)到C#委托(delegate)? 最佳答案 您可以使用SWIG将委托(delegate)从C

c++ - 围绕可由 C 链接器链接的 C++ 库创建 C 包装器

按照对thisquestion(DevelopingCwrapperAPIforObject-OrientedC++code)的回答我设法为我的C++代码编写了一个C包装器。我想将我的包装器编译并链接到一个静态库(使用g++编译),该库只能使用gcc(而非g++)使用、编译和链接。这样库的用户就不必关心库是用C++编写的。这有可能吗? 最佳答案 此链接解释了一些编译器选项和场景:http://docs.oracle.com/cd/E19422-01/819-3690/Building.Libs.html具体来说:>16.7Build

c++ - 包装毛库的最佳实践内存管理

ooqp库已在我的工作场所投入使用。目前有一个学生正在处理它,我想知道处理这个问题的最佳方法。以下是程序使用的函数示例:newQpGenSparse(double**c,intnx,int**irowQ,intnnzQ,int**jcolQ,double**dQ,double**xlow,char**ixlow,double**xupp,char**ixupp,int**irowA,intnnzA,int**jcolA,double**dA,double**b,intmy,int**irowC,intnnzC,int**jcolC,double**dC,double**clow,int

c++ - 具有单个参数模板的成员函数包装器?

我做了一个模板函数,它接受一个成员函数作为参数。但是,由于类必须先声明才能用作成员函数参数的一部分,因此我必须将其作为一个单独的参数:templatefunctionmethodWrap(){}这意味着当显式实例化模板时(我希望这些包装器在编译时生成,而不是将成员指针作为参数传递)我在使用它时必须输入两次:functionsomeFunc=wrapMethod();为什么我不能写这样的东西:templatefunctionmethodWrap(){}并让它捕获C的类型及其成员函数指针,而无需键入两次SomeClass?或者为什么我不能将它包装在一个将C声明为“自由变量”然后具有执行推导