8
我需要在C++和C#之间创建一个包装。我也非常相似,这样的功能:如何在C#中编组C++枚举
virtual SOMEINTERFACE* MethodName(ATTRIBUTE_TYPE attribType = ATTRIBUTE_TYPE::ATTRIB_STANDARD) = 0;
的enum
声明如下:
enum class ATTRIBUTE_TYPE {
ATTRIB_STANDARD,
ATTRIB_LENGTH
};
如何换行ATTRIBUTE_TYPE枚举?
“ATTRIBUTE_TYPE”的底层类型是什么? – Mgetz
只是一个简单的枚举:枚举类ATTRIBUTE_TYPE { ATTRIB_STANDARD, ATTRIB_LENGTH }; – Rock3rRullz
只要您在C#和C++中指定枚举类型(并且它们是相同的),则应该可以直接在P/Invoke中使用枚举。需要预先告知的是,并非所有共享名称的C++和C#类型都是相同的,例如, C#中的long是一个int64,而在C++中它只是一个int32。 – Mgetz