草庐IT

LD_BIND_NOW

全部标签

c++ - std::tr1::function 和 std::tr1::bind

我在C++类中使用非常复杂的C函数时遇到问题(重写C函数不是一个选项)。C函数:typedefvoid(*integrand)(unsignedndim,constdouble*x,void*fdata,unsignedfdim,double*fval);//Thisone:intadapt_integrate(unsignedfdim,integrandf,void*fdata,unsigneddim,constdouble*xmin,constdouble*xmax,unsignedmaxEval,doublereqAbsError,doublereqRelError,double

c++ - 默认参数必须在编译时绑定(bind) - 为什么?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。为什么C++是这样设计的?...(这个问题不同,但与Notpossible:thispointerasadefaultargument.Why?)

c++ - std::bind - 在 vi​​sual studio 中编译意外(未声明的标识符)错误

好吧,如果我正确理解std::bind,我可以使用_1之类的参数来定义一个未给定的参数?正确的?考虑以下行:std::functionfunc(std::bind(&Pred,_1,"name"));这应该行得通,对吧?这将用于std::find_if()函数,因此第一个参数应该是值类型,第二个参数应该是字符串。但是visualstudio2010对此提示并显示以下错误消息:errorC2065:'_1':undeclaredidentifier这很奇怪,我怎么能在visualstudio中说“嘿,第一个参数未绑定(bind)”。Pred是一个以value_type,conststd:

c++ - 将函数返回的共享指针绑定(bind)到对 const 的左值引用是好的做法吗?

虽然我花了一段时间才习惯它,但我现在养成了让我的函数通过对const的左值引用而不是按值来获取共享指针参数的习惯(除非我需要修改原始参数,当然,在这种情况下,我通过对非const的左值引用来获取它们):voidfoo(std::shared_ptrconst&pWidget)//^^^^^^{//workwithpWidget...}这样做的好处是可以避免不必要的共享指针拷贝,这意味着线程安全地增加引用计数并可能导致不需要的开销。现在我一直在想,采用一种有点对称的习惯来检索从函数中按值返回的共享指针是否明智,如以下代码片段的末尾所示:structX{//...std::shared_p

c++ - C++中的早期绑定(bind)和后期绑定(bind)有什么区别?

因为我正在学习面向对象的编程语言,所以它比C和相当新的概念要好得多。我对早期绑定(bind)和后期绑定(bind)感到困惑所以我的问题是WhatisthedifferencebetweenearlybindingandlatebindinginC++? 最佳答案 考虑以下代码:voidfoo(){std::coutmaker(){std::cout>x&&x>50.0){//ifwegetavalidvaluefromtheconsoleandifitis>50//wereturnacallablethatreferstofoore

c++ - std::bind 分配给 std::function

我想要一个std::function类型的变量.这是未能做到这一点的简单示例。我想了解的是:当我调用jj_2a(5,6)时,编译器不会提示什么是auto?该函数绑定(bind)了所有参数。但如果我不使用auto,我会得到我期望的行为(带参数的编译错误)。这么清楚function根本不是自动决定的。如果我绑定(bind)第一个参数而不是第二个参数(jj_3),那么使用两个参数调用会起作用(但根据我的心智模型,会丢弃错误的参数)而使用一个参数调用(我认为应该起作用)不编译。使用std::functional对于jj_3_f说“没有可行的转换”,尽管到目前为止错误消息对我没有帮助。有关编译器

c++ - libc++ - bind() 的命名冲突?

令人惊讶的是,经过一些小改动后,我设法在我的Linux机器上安装了libc++(因为libstdc++缺少一些东西)。不幸的是,由于同名函数,我现有的一些代码现在已经损坏。通常,以我需要的方式,bind()与套接字相关。然而,libc++有它自己的bind()函数,它基本上是this但没有一个方便的命名空间来分隔它们。根据墨菲定律,编译器会尝试使用错误的函数,并报错。NetBeans没有发现任何问题,因为它实际上是在sys/socket.h文件中查找,它应该如此。因此,由于这两个函数基本上都超出了我的控制范围,我该如何告诉编译器(clang++)它应该在特定的header中查找,而不是

c++ - 仿函数与 std::bind

有时我倾向于编写仿函数,不是为了维护函数调用之间的状态,而是因为我想捕获一些函数调用之间共享的参数。例如:classSuperComplexAlgorithm{public:SuperComplexAlgorithm(unsignedintx,unsignedinty,unsignedintz):x_(x),y_(y),z_(z){}unsignedintoperator()(unsignedintarg)const/*yes,const!*/{returnx_*arg*arg+y_*arg+z_;}private://Lotsofparametersarestoredasmember

c++ -/usr/bin/ld : cannot find : No such file or directory

我正在关注this尝试使用一些SDL扩展库的SDL教程。我的代码与theirs相同但我仍然无法制作文件,这让我相信问题出在我的makefile中,它看起来像这样:CXX=g++#Updatethesepathstomatchyourinstallation#Youmayalsoneedtoupdatethelinkeroptionrpath,whichsetswheretolookfor#theSDL2librariesatruntimetomatchyourinstallSDL_LIB=-L/usr/local/lib-lSDL2-Wl,-rpath=/usr/local/lib,-

c++ - 使用 C++ 对象 Q_PROPERTY 绑定(bind)复选框 'checked' 属性

我正在学习QtQuick,并且正在研究C++类和QML属性之间的数据绑定(bind)。在我的C++对象模型中,我有两个属性:Q_PROPERTY(QStringnameREADgetNameWRITEsetNameNOTIFYnameChanged)Q_PROPERTY(boolstatusREADgetStatusWRITEsetStatusNOTIFYstatusChanged)在我的.qml文件中:TextEdit{placeholderText:"Enteryourname"text:user.name}Checkbox{checked:user.status}当我从我的C++