c++ - 检查 void* 是否指向特定的类对象
问题描述
我的作业中有以下代码:
mmapedData node(size);
void* p = mmap(NULL, size + sizeof(mmapedData), PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE,
-1, 0);
memcpy(p, (void*)&nodecpy, sizeof(mmapedData));
检查 p 指向的内存块的第一个 sizeof(mmapedData) 字节是否包含 mmapedData 类(c++)的对象的正确方法是什么?
谢谢。
解决方案
在标准 C 或 C++ 中没有办法做到这一点。
推荐阅读
- keras - 简单的堆叠自动编码器 - 完成第一个 epoch 时,我收到错误“期望 1 个输入,但它收到 2 个输入张量”
- mongodb - MongoDB 按子组聚合已经按日期分组
- google-cloud-storage - Vault 后端存储,至少一个集群需要多少个桶?
- javascript - scrapy javascript重定向页面
- qt - Visual Studio + CMake + Qt Quick:如何调试 QML 文件?
- haskell - Haskell 上的 Buchi 自动机/有限状态机实现
- ruby-on-rails - Rails 表单未在控制器参数中正确设置选中的字段_for 行已选中
- oauth-2.0 - 使用 OAuth 交换 Web 服务,使用访问令牌,但如果有刷新令牌则失败
- memory - SAP HANA 表分区
- python - 在Django中如何显示来自当前登录用户的数据