上下文如下: 我正在使用 Maya 插件。其中一项功能要求我将一个元素从大纲窗口拖动到我的插件 UI 的 UI 元素上。 (Maya 中的一切都在 Qt 中) 从大纲中,我可以拖放一个项目。对于任何熟悉 Qt 的人,您都会知道 DropEvent 带有一个 QMimeData 对象。 该对象包含来自拖放源(Outliner 窗口)的数据。在我的例子中,QMimeData 格式是“application/x-maya-data”。 QMimeData.data() 返回的 QByteArray 有 8 个字节长,前 4 个字节为 NULL。所以,我的直觉是这是指向某种数据类型的指针。
那么,问题来了: 有什么方法可以确定指针指向什么类型的数据?我试过将其转换为一些 Maya 数据结构(MPxData、MObjectHandle 等)但没有成功。
最佳答案
您可以尝试删除它两次,然后在内存调试器(如 valgrind
)中运行您的程序,这将抛出一个错误并显示内存的分配位置。
但是,您也可以考虑社交资源:文档或项目的邮件列表。
关于c++ - 确定 8 字节数据的性质,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8391267/