我正在字符串中使用c#xamarin项目中的以下代码。
在Java中,
ByteBuffer buffer=ByteBuffer.allocate(8);
UsbRequest request=new UsbRequest();
现在,我正试图将这两行代码转换为c#,用于我的xamarin项目
Java.Nio.ByteBuffer m_rinfo;
Int32 m_bytes = 64;
UsbRequest m_request = new UsbRequest();
m_request.Queue(m_rinfo, 64);<<error
最后一行给出一个错误,"使用指定变量‘m_rinfo’
我尝试用将字节分配给m_rinfo
Java.Nio.ByteBuffer m_rinfo = new byte[64];
这给出了错误,无法隐式转换类型字节
如有任何帮助,我们将不胜感激。
我发现我可以将线条转换为;
Java.Nio.ByteBuffer m_rinfo = Java.Nio.ByteBuffer.Allocate(64);
Int32 m_bytes = 64;
UsbRequest m_request = new UsbRequest();
m_request.Queue(m_rinfo, 64);
然而,当程序到达行时;
m_request.Queue(m_rinfo, 64);
我收到错误;
引发了"Java.Lang.RuntimeException"
那么这句话怎么了?
您尝试过m_request.Queue(out m_rinfo, 64)
;吗;?据我所知,当c#中的一个变量被传递给一个方法,意图在其中更改其值时,就会使用out
。例如:
ListOfSomeKind list = null;
methodToFillListWithData(out list);