我正在尝试创建一个支持4个参数的函数,但它不起作用.. 我怎么解决这个问题? 谢谢。
private void Byte(byte a, byte b, uint c, byte d)
{
PS3.SetMemory(a + b * c, new byte[] { d });
}
Byte(0x00f474e3 + 0x3700 * dataGridView1.CurrentRow.Index, new byte[] { 0x03 });
错误:
Error: No overload for 'Byte' method takes two arguments
答案 0 :(得分:5)
发送参数时不需要执行计算。
我认为你想这样做:
Byte(0x00f474e3,0x3700 , dataGridView1.CurrentRow.Index , 0x03);
或强>
你可以通过wrting asbelow:
简单地避免使用Byte()函数PS3.SetMemory(0x00f474e3 + 0x3700 * dataGridView1.CurrentRow.Index,
new byte[] { 0x03 });
答案 1 :(得分:1)
是。您没有指定c
和d
。
0x00f474e3 + 0x3700 * dataGridView1.CurrentRow.Index
是a
,而
new byte[] { 0x03 }
是b
,这是错误的。它不期望字节数组而只是字节。
c
,d
怎么样?
所以,我认为你应该这样做:
Byte(0x00f474e3,0x3700,dataGridView1.CurrentRow.Index,0x03);
答案 2 :(得分:1)
您应该按原样传递参数:
Byte(0x00f474e3, 0x3700, dataGridView1.CurrentRow.Index, 0x03);