Estoy tratando de crear un token ERC20 fuera de ethereum, pero cuando coloco el código en el editor de la billetera ethereum, aparece un error extraño. Dice:
"throw" is deprecated in favour of "revert()", "require()" and "assert()".
if (balanceOf[msg.sender] < _value) throw;
^---^
(del blog de Ethereum ) ( Código fuente ) ¿Puede alguien ayudarme con esto?
Como dice claramente el mensaje de error
tirar ha quedado en desuso
Usar
require( balanceOf[msg.sender] >= _value)
Puede encontrar una descripción detallada en este artículo .
revert() y require() reembolsan el gas sobrante, sin embargo, assert() consume todo el gas proporcionado.
La función require debe usarse para garantizar que se cumplan condiciones válidas, como entradas o variables de estado del contrato, o para validar valores de retorno de llamadas a contratos externos. Si se usan correctamente, las herramientas de análisis pueden evaluar su contrato para identificar las condiciones y llamadas de función que llegarán a una aserción fallida. El código que funciona correctamente nunca debe llegar a una declaración de afirmación fallida; si esto sucede, hay un error en su contrato que debe corregir
.
Shamit Verma