编辑:在我的情况下,检查 bool 值更容易,如果它是真的,只需从数组中删除前 0x200(十进制 512)字节,这样以后对数组的任何访问都不需要担心它,基本上意味着如果布尔“Skiphex200bytes”为真,我会从数组的开头删除 0x200 字节,而不必修改正在动态访问的索引。我会保留这个问题和我宣布正确的答案,因为如果有人决定做类似的事情,它仍然是有用的信息。
假设我有 2 个数组:一个是
protected byte[] _ROM;
另一个是
public byte[] ROM => _ROM;
如果我想这样做怎么办:当我尝试在 中获取/设置一个值时ROM
(并且如果某个布尔值为真),它会将0x200
(十进制 512)添加到正在请求的索引中,也就是一种
return Boolvar ? ROM[i+0x200] : ROM[i]
在 getter/setter 中。
但我不知道如何在 getter/setter 中访问所述索引,所以在返回之前我无法修改它......