我有一个带源代码的MinGW DLL(~20k行),我需要在CLR中使用这个DLL中的一些类。起初我尝试为C ++类编写Manged C ++包装类(我刚刚从源代码中复制)并从C#引用这个类。但是VC ++编译器和MinGW存在差异,因此本机代码会编译出一些错误!我对C ++和ASM没有太大的经验,但却产生了一些麻烦。
告诉我们,有没有办法在VC ++或C#中导入MinGW类?
UPD:
MingGW和VC ++的区别:
asm("fnstcw %0\n" : "=m" (cw) : : "memory");
asm("fldl (%0)\n": : "r"(x): "st(7)"); };
asm("fstps (%0)\n": : "r"(x): "memory", "st");
不能在VC ++中编译。我从未编写过比MOV AX更难编写的汇编代码,BX:)
答案 0 :(得分:5)
几点:
您不能使用C ++ DLL,但可以将C DLL用作任何其他本机DLL。
关于代码 - 它会更改一些FPU选项,因此如果要将其移植到C#/ .Net 你应该先了解它的作用。