C# 将字节数组声明为公共成员
我正在开发一个WindowsPhone8应用程序,我需要将字节数组从后台代理传递到前台应用程序 为了实现这一点,我正在用C++/CX编写一个接口,该接口将用C#实现,并将由后台进程调用 接口声明为:C# 将字节数组声明为公共成员,c#,windows-phone-8,c++-cx,C#,Windows Phone 8,C++ Cx,我正在开发一个WindowsPhone8应用程序,我需要将字节数组从后台代理传递到前台应用程序 为了实现这一点,我正在用C++/CX编写一个接口,该接口将用C#实现,并将由后台进程调用 接口声明为: public interface class IStatusListener { void OnNewData(byte data[], int length); }; 但我得到一个错误,比如 “公共成员的签名包含本机类型“byte[]”” 如何在这里声明字节数组 您的公共WinRT类不能在
public interface class IStatusListener
{
void OnNewData(byte data[], int length);
};
但我得到一个错误,比如
“公共成员的签名包含本机类型“byte[]””
如何在这里声明字节数组 您的公共WinRT类不能在其公共签名中使用非RT类型。这是人们在开始编写WinRT组件时经常遇到的问题。例如,请参见下面的代码
class Native { };
public ref class MyRef sealed
{
private:
voidFoo1(Native n) { } // <--This is fine
public:
voidFoo2(Native n) { } // <--This won't compile
};
类本机{};
公共参考类MyRef密封
{
私人:
voidFoo1(本机n){}/通过重新写入接口解决了此问题:
public interface class IStatusListener
{
void OnNewData(Platform::Array<byte>^* data);
};
公共接口类侦听器
{
void OnNewData(平台::数组^*数据);
};
我明白了,但你的回答没有具体说明解决方法。