我收到了一个不安全的byte*
类型指针,指向我班级其中一个方法中的二维数据集。我想在同一个类中定义另一个方法,它将对此指针执行一些指针运算。当我尝试按如下方式定义方法时,我得到了几个编译时错误。看起来在类范围内不允许使用unsafe
关键字。我该如何解决这个问题?
unsafe
{
private byte* ReadIntoMemory(int rowIndex, int colIndex, int rowSize, int colSize, byte *abc)
{
}
}
如果我不使用unsafe
,则编译器将该方法的byte*
参数标记为无效语法。
我试图对ReadIntoMemory
方法进行编码,以便将引用返回到正确的内存位置,代码编写如下 -
byte *interestingMemoryLocation = ReadIntoMemory(locX, locY, sizeX, sizeY, basePointer);
答案 0 :(得分:1)
您需要将unsafe关键字移动到方法签名中:
private unsafe byte* ReadIntoMemory(…