contract MyContract {
uint public len;
mapping(uint=>byte) public names;
function initContracts(byte[] contractNames_){
for(uint i=0;i<contractNames_.length;i++){
names[i]=contractNames_[i];
}
len=contractNames_.length;
}
}
Cuando uso Mist y paso [0x01,0x02,0x03], parece que byte[] contractNames_
no se puede asignar al mapeo de almacenamiento names
, y la variable len
permanece en 0.
La entrada [0x01,0x02,0x03] tenía que usar cadenas hexadecimales entrecomilladas:["0x01","0x02","0x03"]
El código funciona tal como está en la solidez del navegador y OP ha confirmado que también funciona en Mist.
ética
["0x01","0x02","0x03"]
con las cadenas hexadecimales citadas en Mist? Probé su código tal como está y funcionó con cadenas hexadecimales entre comillas en la solidez del navegador (salida en pastebin.com/psYDzPn0 ).jim verde