我正在创建一个C ++ / CLI包装器,以便我可以在本机C ++中访问C#库。我已经完成了大约60%的包装,但我遇到了麻烦。 C#库的SDK将方法输入/输出提供为:
public bool GetNumBytesReceived(ref ulong numBytesReceived)
我对如何获取numBytesReceived并将其传递给本机C ++感到茫然。我觉得这个问题之前一定是问过这个问题,但我只是看到了那些试图走向另一条路的东西(从原生C ++到C#)。我已经为我的C ++ / CLI包装器编译了以下内容,但是当我从本机C ++访问它时它给出了NullReferenceException:
public: bool NumBytesReceived(unsigned long long& numBytesReceived) {
return _CSManagedClass->GetNumBytesReceived(numBytesReceived);
}
我也可以在没有输入参考(&)的情况下进行编译。根据我的调试,问题似乎是在C ++ / CLI包装器中,我只是不知道在哪里。
任何帮助都表示赞赏,如果已经提出要求,我会道歉。我在C语言系列中仍然比较绿。