Я использую ремикс. ethereum .org
Я написал этот очень простой умный контракт:
pragma solidity ^0.4.19;
contract TicTacToe {
bool myBool = false;
uint8 myUint8;
uint256 myUint256;
string myString = "myString";
bytes myBytes = "myString";
function setMyBoolean(bool myBoolArgument) public {
myBool = myBoolArgument;
}
function getMyBoolean() public view returns(bool) {
return myBool;
}
}
Как видите, значение по умолчанию для myBool
равно false Я могу изменить это, вызвав функцию setMyBoolean
.
Если я использую этот аргумент и введу true , myBool
будет установлен на true Если я использую этот аргумент и введите false , myBool
будет установлен на false
Но если я введу любую другую комбинацию букв, myBool
будет установлен на true . Это удивляет меня, потому что значение по умолчанию для myBool
равно false .
Почему это происходит?