【发布时间】:2012-08-09 12:55:12
【问题描述】:
我需要一个 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 中正常工作?
【问题讨论】:
标签: reference c++-cli clr pass-by-reference managed