std::function 可以序列化吗?

2024-01-26

这是一个理论问题。假设有一些对象,其中包含订阅这些对象的事件的回调函数列表。现在我们想将这些对象存储在磁盘上。是一个std::function可序列化?


No.

每当使用类型擦除(即,将实现细节隐藏在接口后面)时,在不知道对象的动态类型的情况下唯一可用的操作是接口提供的操作。

C++ 标准中没有序列化,也没有简单的方法来序列化功能要么(不反射),因此std::function接口不提供序列化。

另一方面,没有什么可以阻止you从使用Callback提供序列化支持的基类。

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

std::function 可以序列化吗? 的相关文章

  • C# 和 Javascript SHA256 哈希的代码示例

    我有一个在服务器端运行的 C 算法 它对 Base64 编码的字符串进行哈希处理 byte salt Convert FromBase64String serverSalt Step 1 SHA256Managed sha256 new S
  • 获取按下的按钮的返回值

    我有一个在特定事件中弹出的表单 它从数组中提取按钮并将标签值设置为特定值 因此 如果您要按下或单击此按钮 该函数应返回标签值 我怎样才能做到这一点 我如何知道点击了哪个按钮 此时代码返回 DialogResult 但我想从函数返回 Tag
  • 如何使用GDB修改内存内容?

    我知道我们可以使用几个命令来访问和读取内存 例如 print p x 但是如何更改任何特定位置的内存内容 在 GDB 中调试时 最简单的是设置程序变量 参见GDB 分配 http sourceware org gdb current onl
  • 如何避免情绪低落?

    我有一个实现状态模式每个状态处理从事件队列获取的事件 根据State因此类有一个纯虚方法void handleEvent const Event 事件继承基础Event类 但每个事件都包含其可以是不同类型的数据 例如 int string
  • 如何在列表框项目之间画一条线

    我希望能够用水平线分隔列表框中的每个项目 这只是我用于绘制项目的一些代码 private void symptomsList DrawItem object sender System Windows Forms DrawItemEvent
  • Newtonsoft JSON PreserveReferences处理自定义等于用法

    我目前在使用 Newtonsoft Json 时遇到一些问题 我想要的很简单 将要序列化的对象与所有属性和子属性进行比较以确保相等 我现在尝试创建自己的 EqualityComparer 但它仅与父对象的属性进行比较 另外 我尝试编写自己的
  • 当 contains() 工作正常时,xpath 函数ends-with() 工作时出现问题

    我正在尝试获取具有以特定 id 结尾的属性的标签 like span 我想获取 id 以 国家 地区 结尾的跨度我尝试以下xpath span ends with id Country 但我得到以下异常 需要命名空间管理器或 XsltCon
  • Cython 和类的构造函数

    我对 Cython 使用默认构造函数有疑问 我的 C 类 Node 如下 Node h class Node public Node std cerr lt lt calling no arg constructor lt lt std e
  • 使用 System.Text.Json 即时格式化 JSON 流

    我有一个未缩进的 Json 字符串 例如 hash 123 id 456 我想缩进字符串并将其序列化为 JSON 文件 天真地 我可以使用缩进字符串Newtonsoft如下 using Newtonsoft Json Linq JToken
  • vector 超出范围后不清除内存

    我遇到了以下问题 我不确定我是否错了或者它是一个非常奇怪的错误 我填充了一个巨大的字符串数组 并希望在某个点将其清除 这是一个最小的例子 include
  • 当操作繁忙时,表单不执行任何操作(冻结)

    我有一个使用 C 的 WinForms 应用程序 我尝试从文件中读取一些数据并将其插入数据表中 当此操作很忙时 我的表单冻结并且无法移动它 有谁知道我该如何解决这个问题 这可能是因为您在 UI 线程上执行了操作 将文件和数据库操作移至另一个
  • Discord.net 无法在 Linux 上运行

    我正在尝试让在 Linux VPS 上运行的 Discord net 中编码的不和谐机器人 我通过单声道运行 但我不断收到此错误 Unhandled Exception System Exception Connection lost at
  • 将 xml 反序列化为类,list<> 出现问题

    我有以下 XML
  • 插入记录后如何从SQL Server获取Identity值

    我在数据库中添加一条记录identity价值 我想在插入后获取身份值 我不想通过存储过程来做到这一点 这是我的代码 SQLString INSERT INTO myTable SQLString Cal1 Cal2 Cal3 Cal4 SQ
  • C++ fmt 库,仅使用格式说明符格式化单个参数

    使用 C fmt 库 并给定一个裸格式说明符 有没有办法使用它来格式化单个参数 example std string str magic format 2f 1 23 current method template
  • 控制到达非 void 函数末尾 -wreturn-type

    这是查找四个数字中的最大值的代码 include
  • 如何让Gtk+窗口背景透明?

    我想让 Gtk 窗口的背景透明 以便只有窗口中的小部件可见 我找到了一些教程 http mikehearn wordpress com 2006 03 26 gtk windows with alpha channels https web
  • C - 直接从键盘缓冲区读取

    这是C语言中的一个问题 如何直接读取键盘缓冲区中的数据 我想直接访问数据并将其存储在变量中 变量应该是什么数据类型 我需要它用于我们研究所目前正在开发的操作系统 它被称为 ICS OS 我不太清楚具体细节 它在 x86 32 位机器上运行
  • 为什么 C# Math.Ceiling 向下舍入?

    我今天过得很艰难 但有些事情不太对劲 在我的 C 代码中 我有这样的内容 Math Ceiling decimal this TotalRecordCount this PageSize Where int TotalRecordCount
  • ASP.NET MVC 6 (ASP.NET 5) 中的 Application_PreSendRequestHeaders 和 Application_BeginRequest

    如何在 ASP NET 5 MVC6 中使用这些方法 在 MVC5 中 我在 Global asax 中使用了它 现在呢 也许是入门班 protected void Application PreSendRequestHeaders obj

随机推荐

  • Android OpenCV:无法 dlopen 相机包装库

    如同OpenCV 2 3 如何从Android相机捕获帧 https stackoverflow com questions 7198912 opencv 2 3 how to capture frames from android cam
  • 如果我单击 overrideredirect 窗口并移动它(窗口),如何获得更好的窗口位置?

    当我单击窗口时 在我的例子中 当我单击self top frame and self app name 要移动它 窗口位置将更改为 0 x 和 y 坐标 所以如果我想移动窗口 窗口就会移动到右侧 我可以修复它 以便窗口不会移动到右侧 或从我
  • Javascript使用datejs解析RFC3339日期时间

    我在使用来自 Google Calendar API 的日期格式的 datajs 时遇到问题 我认为日期时间格式是 RFC3339 这是从日历 api 返回的示例日期时间 2012 01 05T08 45 00Z 这是来自 datejs 文
  • 使用 SQLAlchemy 和 PostgreSQL 进行 Flask 单元测试耗尽数据库连接

    我正在使用 Flask SQLAlchemy 和 PostgreSQL 运行一套相当简单的测试用例 使用应用程序工厂 我定义了一个基本单元测试类 如下所示 class BaseTestCase unittest TestCase def s
  • Ionic devapp 只是搜索

    我在使用 Ionic DevApp 应用程序时遇到问题 我使用它在浏览器中打开的 ionicserve c 命令 但在我的设备上它只是寻找 侦听网络上的应用程序 它没有出现在我的设备上 但是我已经在其他 2 台设备上进行了测试 并且项目出现
  • 如何禁用 jquery 数据表中的显示条目属性

    我刚刚开始使用 jquery 我使用 jquery 数据表插件来启用表视图 我需要禁用显示条目属性 谁能帮助我在哪个js中我需要禁用该属性 我已关注此链接 但没有帮助 不知道要修改哪个js here http datatables net
  • QTreeView内存消耗

    我现在正在测试 QTreeView 功能 我对一件事感到惊讶 看来 QTreeView 内存消耗取决于项目计数 O O 这是非常不寻常的 因为这种类型的模型视图容器仅跟踪正在显示的项目 其余项目都在模型中 我用一个简单的模型编写了以下代码
  • Android 证书已更改?

    我最近格式化了我的计算机并更新到 Windows 7 我备份了我的密钥库并尝试用它签署我的 apk 但它给了我一个错误 说我的证书将在 22 年后过期 这仅低于市场上传 apk 的要求 所以现在我陷入无法更新我的应用程序 这怎么发生的 有没
  • Emacs 打开最近的文件很慢!

    直接打开文件时速度很快 但是当我打开最近激活的文件时 在我的文件中添加以下行 emacs require recentf recentf mode 1 setq recentf max menu items 25 global set ke
  • Actionscript 3:如何从外部类访问舞台上的元素?

    我的 as 文件中有一个外部类 我的问题是我无法访问舞台上的元素 像 stage txtfield text 或 this parent txtfield text 这样的代码不起作用 txtfield 是动态文本字段的实例名称 这在一定程
  • Laravel 注册表单上的自定义验证

    我目前正在努力对注册表进行一些验证 基本上 当用户注册时 它会检查他们输入的唯一代码是否有效 如果无效则不允许他们注册 但在我从中读取的代码表中 代码上也有一个到期日期 我需要在认为有效后再次检查到期日期尚未过去 换句话说 它不大于现在 我
  • 编写一个返回值的 jQuery 插件

    我正在编写一个 jQuery 插件 在某些情况下可以存储一些数据 我想以一种非常灵活的方式编写它 我可以更改输入参数来获取插件存储的一些值 解释 当我打电话时 any myPlugin 我的插件初始化创建一个div还有一些a里面 单击一个a
  • C++ 中的全局变量是存储在堆栈、堆还是两者都不存储?

    最初我很确定正确的答案一定是 都不是 因为全局变量存储在数据内存中 但后来我找到了 Robert Lafore 的这本书 名为 C 中的面向对象编程 它明确指出 根据C 标准 全局变量存储在堆上 现在我很困惑 无法真正弄清楚所提出问题的正确
  • 如何在表单完成期间设置外键(python/django)

    在表单处理期间 我希望能够在模型对象上设置外键字段 而无需用户从下拉列表中选择键 例如 models py class AAA models Model some field models TextField class BBB model
  • where 0=0 这样的条件的确切含义是什么?

    我在 Oracle 过程中使用 where 0 0 这样的语句时有点困惑 有人可以澄清一下吗 即使我们这样做是为了动态选择 为什么即使我们在查询中附加了实际条件 也要添加这条语句呢 这个 where 条件会对结果集产生任何影响吗 我经历了如
  • LINQ 中的 GETDATE()

    替代品是什么GETDATE 在 LINQ 中 我从以下帖子中得到了一些解决方法 如何在 Linq to SQL 表达式中使用 SQL 的 GETDATE 和 DATEADD https stackoverflow com questions
  • 如何在 EasyNetQ 中为每个消费者声明自定义错误交换?

    我有四个消费者 当错误发生时 消息发布到默认的 EasyNetQ Default Error Queue 是否可以让每个队列消费者编写自己的错误交换 例如 Queue Name A ErrorExchange A ErrorExchange
  • 未定义 navigator.push React-native 0.43.4

    我正在使用react native的Navigator组件 但当我想推送到anthor页面时仍然出现错误push undefined is not a function这是我的代码 import React Component from r
  • Google 地图路径的 SVG 渐变线

    我正在解释谷歌地图中的 GPS 位置数据 在这里我想创建一条带有渐变的路径 该路径以红色开始 以橙色结束 this https developers google com maps documentation javascript exam
  • std::function 可以序列化吗?

    这是一个理论问题 假设有一些对象 其中包含订阅这些对象的事件的回调函数列表 现在我们想将这些对象存储在磁盘上 是一个std function可序列化 No 每当使用类型擦除 即 将实现细节隐藏在接口后面 时 在不知道对象的动态类型的情况下唯