C++ 传递函数指针

2023-12-13

我有以下功能

static void p (){

}

我想将指向 p 的函数指针传递给函数 x。

void x(void * ptr){

}

我正在尝试以下操作,但它不起作用。

...
x(ptr);

注意 x 和 p 属于不同的类。 我收到以下编译错误。

invalid conversion from 'void (*)()' to 'void*' [-fpermissive]

它需要是:

void x(void(*function)())
{
  // Whatever...
}

如果您使用 C++11,您可以标准::函数:

void x(std::function<void()> function)
{
  // Whatever
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C++ 传递函数指针 的相关文章

  • Hololens 应用程序将不再构建 - 引用元数据文件丢失且找不到 c-Sharp.firstpass

    我已按照 Microsoft 在其多个项目下列出的确切步骤进行操作微软全息 学院 https developer microsoft com en us windows holographic academy教程 我完成了所有这些 并且从创
  • 为什么我需要显式编写“auto”关键字?

    我正在从 C 98 转向 C 11 并且已经熟悉了auto关键词 我想知道为什么我们需要明确声明auto编译器是否能够自动推导类型 我知道 C 是一种强类型语言 这是一条规则 但如果不显式声明变量就不可能实现相同的结果auto 放弃显式的a
  • 在 TPL Dataflow 中,是否可以在创建块之后但使用之前更改 DataflowBlockOptions?

    有效果吗 我想推迟设置 ExecutionDataflowBlockOptions SingleProducerConstrained 属性 直到我准备好将网络链接在一起 因为 我想将创建块及其语义与将网络及其语义链接在一起分开 但据我所知
  • C# SMO 远程数据库备份到本地机器

    我有一个执行 SQL 数据库备份和恢复的应用程序 这在本地计算机上运行良好 但是如果我针对另一台计算机上托管的 SQL 服务器运行此应用程序 则会出现以下错误 Microsoft SqlServer Management Smo Faile
  • 合并多边形的高效算法

    我有一个多边形列表 在这个列表中 一些多边形重叠 或者接触其他多边形 我的任务是合并所有相互重叠或接触的多边形 我有一个union执行此操作的方法 做到这一点最有效的方法是什么 我目前能想到的是循环遍历多边形列表 检查合并列表以查看该多边形
  • 有什么办法可以让这个 C# 代码更快吗? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在读取一个大文件 X12 并解析其中的信息 我有两个瓶颈功能 我似乎无法解决 read line 和 get element 有什
  • 改进绩效反思 - 我应该考虑哪些替代方案?

    我需要动态地设置对象上的一堆或属性的值 将其称为传输对象 将在短时间内创建相当数量的此类传输对象并设置其属性 我想避免使用反射 还有其他选择吗 如果是的话 有我可以查看的示例实现吗 Use Delegate CreateDelegate h
  • 从 C# 访问 COM vtable

    C 中有没有办法访问 COM 对象的虚拟方法表以获取函数的地址 经过大量搜索和拼凑不同的部分解决方案后 我弄清楚了如何做到这一点 首先 您需要为您尝试访问的对象定义 COM 组件类 ComImport Guid InterfaceType
  • FxCop 和 GAC 疯狂

    当我尝试分析依赖于模式和实践 企业库数据 以及其他 2 0 0 0 的项目时使用 FxCop FxCop 抱怨它不能 定位程序集引用 即使正在分析的应用程序 dll 是根据其编译的此版本及其在 GAC 中 如果我浏览到 GAC 尝试选择相同
  • C#:如何确定坐标是否在美国大陆?

    我正在获取坐标 纬度 经度 我想检查这些坐标是否位于美国大陆 有没有一种简单的方法可以在 C 中实现 我可以将坐标转换为 MGRS 或 UTM 谢谢 哇哦 他们专门为你准备了 http econym org uk gmap states x
  • 隐式转换和编译器的不同行为

    Motivated by this question https stackoverflow com q 51972738 5800831 I created the following code struct X X int struct
  • 安全移动 C++ 对象

    我听到过一些警告 不要通过以下方式将对象运送到另一个内存位置memcpy 但不知道具体原因 除非它包含的成员做了依赖于内存位置的棘手事情 否则这应该是完全安全的 或者不是 编辑 预期的用例是像这样的数据结构vector 它存储对象 不是po
  • Magento SOAP V2 API - 附加属性设置为空

    几个小时以来 我一直在尝试通过 SOAP V2 API 创建具有附加属性的产品 每当我打电话时就会添加该产品目录产品创建但我随请求发送的附加属性被设置为空 每当我不添加附加属性时 这两个属性都会设置为其默认值 因此我认为这些属性正在发送和接
  • 检查字符串中是否存在所有字符值

    我目前正在做这项任务 但我被困住了 目标是读取文件并查找文件中的字符串中是否存在这些字符值 我必须将文件中的字符串与作为参数放入的另一个字符串进行比较 但是 只要每个字符值位于文件中的字符串中 那么它就 匹配 示例 输入和输出 a out
  • ld: 无法对非 PE 输出文件执行 PE 操作错误

    我是操作系统编程的新手 我正在读一本书 其中给出了一个简单的内核示例 如下所示 main char video memory 0xb8000 video memory X 为了编译这个名为 kernel c 的文件 我在 Windows 7
  • 在 Windows 上构建 MLT 框架时出错

    我一直在遵循官方提供的构建指南here http www mltframework org bin view MLT WindowsBuild 我需要 MLT 来创建视频播放器 并且我选择仅安装前 4 个库 如指南中所述 FFmpeg SD
  • 使用智能指针在大型对象集合中创建多个索引

    我正在为一个大型对象集合创建多个索引 即使用不同的键 对象可以改变 集合可以缩小和增长 到目前为止我的想法 保留某种指向对象的指针的多个集合 使用set代替map以获得更好的封装 使用 unordered set 可以很好地扩展大型数据集
  • GCC编译非常慢(文件大)

    我正在尝试编译一个大的 C 文件 专门用于 MATLAB mexing C 文件大约 20 MB 可用来自 GCC 错误跟踪器 https gcc gnu org bugzilla attachment cgi id 36632如果你想玩一
  • 偏专业化朋友声明

    在下面的代码中 template
  • 布尔实现的atomicCAS

    我想弄清楚是否存在错误答案 https stackoverflow com a 57444538 11248508 现已删除 关于Cuda like的实现atomicCAS for bool是 答案中的代码 重新格式化 static inl

随机推荐

  • 将非常大的 csv 文件与公共列合并

    例如 我有两个 csv 文件 0 csv 100a a b c c 200a b c c c 300a c d c c 和 1 csv 100a Emma Thomas 200a Alex Jason 400a Sanjay Gupta 5
  • ajax xhr lengthComputable 使用 php 文件返回 false

    我正在使用 XMLHttpRequest 执行 ajax 请求 以显示请求的进度 它对于 html 文件工作得很好 但是 evt lengthComputable 对于 php 文件返回 false 我的 php 文件以 utf 8 编码
  • ML-Engine 预测出现错误,但本地预测工作正常

    我在这里搜索了很多 但不幸的是找不到答案 我在跑步TensorFlow 1 3 在 MacOS 上通过 PiP 安装 在我的本地计算机上 并使用provided ssd mobilenet v1 coco 检查站 我设法在本地和 ML En
  • WhatsApp Business API 未向手机发送 /message 端点或测试消息

    我已经设置了 WhatsApp Business 来测试他们用于发送消息的新 WhatsApp API 我已按照入门指南进行操作 但在尝试发送邮件时遇到了问题测试消息到我的手机 我测试了使用业务设置中的测试消息调用发送消息 如指南中所示 并
  • 一个变量有两种类型

    我需要从 TypeScript 读取一个 JSON 对象 它有一个变量名称prop两种类型中的哪一种Identifier or Expression到 C TypeScript 可以有一个具有多种类型的变量 具有联合类型功能 例如 prop
  • 如何忽略第一个小数点后的第一个值(如果它是 0),否则如果大于 0,则取它?

    我的值如下 decimal val 1 100 现在我想做的是 如果我在第一个小数点值后有 0 那么我只想取 1 1 并忽略其余部分 如果我有 1 11 那么我想取整个 1 11 这就是我的想法 将十进制转换为字符串 按点分割字符串 检查长
  • TOMCAT 6 SSL 错误:别名无法识别密钥条目

    我正在尝试在收到 CA 后配置密钥库 我收到了一份中级 CA 和一份 CA 我已使用此命令导入它们 keytool delete alias tomcat keystore B1i keystore keytool import alias
  • 接口与抽象类[重复]

    这个问题在这里已经有答案了 在C 中 什么时候应该使用接口 什么时候应该使用抽象类 什么可能是决定因素 更新 C 8 0 新功能 从 C 8 0 开始 接口可以定义成员的默认实现 包括属性 在接口中定义属性的默认实现很少见 因为接口可能不定
  • Div 的高度不及其浮动子元素的总高度

    好吧 我在理解 float 属性的行为方面确实遇到了问题 该页面宽 750 像素 为了将其保持在屏幕中央 我使用了以下代码 div align center div align left style width 100 stuff div
  • 为 JPanel 提供基于百分比的宽度

    制作一个最简单的方法是什么JPanel占据其父容器的固定百分比 按宽度 当其父容器的宽度发生变化时 其宽度应该更新 我尝试使用Box createHorizontalStrut 但是当宽度改变时 它不会更新JPanel的父容器发生变化 你想
  • 如何解决“CastError:对于模型“任务”的路径“_id”处的值“未定义”(类型字符串),转换为 ObjectId 失败”? [复制]

    这个问题在这里已经有答案了 我对 Node JS 还是个新手 我正在尝试使用 Node JS 和 Mongo DB 制作一个图书目录 每次我按删除按钮删除一本书时 都会显示此错误 CastError Cast to ObjectId fai
  • 间歇性 MySQL 服务器已消失错误

    我一直在绞尽脑汁试图找出导致脚本间歇性错误的原因 错误是 SQLSTATE HY000 一般错误 2006 MySQL 服务器已经消失 下面的脚本是一个函数的一部分 该函数执行curl 从 JSON 响应中获取一些值 然后将它们写入表中 我
  • PDO错误处理[重复]

    这个问题在这里已经有答案了 从有关管间的教程中 我了解了一些有关执行 PDO 查询的知识 本教程使用了 try catch 查询的结构基本上如下 try dbh new PDO mysql host hostname dbname dbna
  • 捕获正在运行的进程的 FlashWindowEx 事件

    我有一个已经在运行的应用程序 它时不时地触发 FlashWindowEx 事件 Windows 7 图标闪烁 我想捕捉这个事件 但我似乎找不到任何关于如何捕捉的好信息 我的想法是事情会是这样的 使用 Process GetProcesses
  • Ajax 日历扩展器结束日期

    我正在使用 ajax 日历扩展器作为 起始日期 和 截止日期 文本框 我必须禁用 截止日期 之前的日期或小于所选 起始日期 的日期 我可以看到很多帖子使用range validation 如何在不向用户发送任何消息的情况下禁用日期 首先添加
  • Silverlight 中的 Lync 错误:客户端不受信任

    当我尝试在 Silverlight 应用程序中加载 Lync 控件时 出现错误 客户端不受信任 当我在没有相应的 Web 项目的情况下调试 Silverlight 应用程序时 不会出现此错误 这是生成错误的代码 LyncClient l L
  • 为什么 python 不能从 python 函数中调用 Javascript() ?

    我使用了建议的代码从 iPython Notebook 下载 CSV动态构建 JavaScript 代码 并在从 Jupyter Notebook 调用时使用 Python 中的 Javascript 将其传递到浏览器 代码效果很好 如果我
  • 丢失了我的密钥库,只有 SHA1

    我不小心删除了我的keystore文件 现在我无法在 Google Play 中更新我的应用程序 我只有其中的 SHA1 指纹 我想知道是否有办法创建一个新的密钥库并在那里插入该 SHA1 代码 这样我就可以使用密钥库再次管理我的应用程序
  • 如何根据张量流中的某些谓词从队列中过滤张量?

    如何使用谓词函数过滤存储在队列中的数据 例如 假设我们有一个存储特征和标签张量的队列 我们 只需要那些满足谓词的张量 我尝试了以下实现但没有成功 feature label queue dequeue if predicate featur
  • C++ 传递函数指针

    我有以下功能 static void p 我想将指向 p 的函数指针传递给函数 x void x void ptr 我正在尝试以下操作 但它不起作用 x ptr 注意 x 和 p 属于不同的类 我收到以下编译错误 invalid conve