map - 在 c++/cli 中建立托管对象和 native 指针之间的映射?

标签 map c++-cli native managed

我有一个 c++/cli 类,我想在其中维护托管字符串和 native 指针之间的映射。

使用 std::map 会给编译器警告 C4368(无法将“成员”定义为托管“类型”的成员:不支持混合类型)。

使用字典给出 C3225:“TValue”的泛型类型参数不能是“ native 指针”,它必须是值类型或引用类型的句柄

我怎样才能实现这个映射?

最佳答案

只需创建一个包含 native 指针的值类型,即

value struct TValue { native* ptr; };

Dictionary<String^, TValue> d;

关于map - 在 c++/cli 中建立托管对象和 native 指针之间的映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6949384/

相关文章:

c++ - C++ 中的 FIFO 映射

c - 父进程和子进程的内存映射文件问题

不同类的 C++ Map<>.find() 重载

c++ - 将文本框字符串转换为 float ?

visual-studio-2010 - 无法获取 Mat 的列数和行数

compilation - 通用委托(delegate)的 C++/CLI 编译错误

java - 为什么 System.arraycopy 在 Java 中是原生的?

build - Quarkus native 图像构建失败,参数未知

java - Java 的 LinkedHashMap 是否维护键的顺序?

windows-mobile - 应用程序什么时候会静默崩溃,何时在Windows Mobile中使用 “send report”崩溃