我有一个C ++ DLL,它返回一个指向抽象结构的指针,这隐藏了底层类的接口。 DLL只导出一个函数getInstance,该函数创建一个继承自此抽象结构的C ++结构体的对象,并将其作为指向抽象结构类型的指针返回。
据我所知,C#不允许抽象结构,并且你不能有一个指向C#类的指针,所以我想不出一种方法可以将这个结构从C ++转换为C#
感谢。
答案 0 :(得分:3)
在C ++中,结构和类是相同的。唯一的区别是它们默认为不同的访问指定(struct默认使用public,类默认为private)。
因此,您的抽象C ++结构变为C#类,而不是 struct 。