我需要一个 C# 接口来通过 CLI 方言调用一些本机 C++ 代码。C# 接口在所需参数前面使用out属性说明符。这转化为 C++/CLI 中的%跟踪引用。
我的方法具有以下签名和主体(它正在调用另一个本机方法来完成这项工作):
virtual void __clrcall GetMetrics(unsigned int %width, unsigned int %height, unsigned int %colourDepth, int %left, int %top) sealed
{
mRenderWindow->getMetrics(width, height, colourDepth, left, top);
}
现在由于一些编译时错误(都与 相关not being able to convert parameter 1 from 'unsigned int' to 'unsigned int &'
),代码将无法编译。
作为一个谦虚的 C++ 程序员,在我看来,CLI 对于讲德语的人来说就像是荷兰语。可以做些什么来使这个包装器在 CLI 中正常工作?