Методы и примеры проводок в смарт-контракте

В смарт-контракте можно хранить различные типы данных и манипулировать ими. Вот некоторые распространенные типы данных и методов, которые можно использовать в смарт-контракте, а также примеры кода:

  1. Хранение и получение данных:

    • Сохранение строки:

      string public myString;
      function setString(string memory _value) public {
       myString = _value;
      }
    • Сохранение целого числа:

      uint public myNumber;
      function setNumber(uint _value) public {
       myNumber = _value;
      }
    • Хранение массива адресов:

      address[] public myAddresses;
      function addAddress(address _newAddress) public {
       myAddresses.push(_newAddress);
      }
  2. Контроль доступа:

    • Ограничение доступа к функции с помощью модификаторов:
      address public owner;
      modifier onlyOwner() {
       require(msg.sender == owner, "Only the contract owner can call this function.");
       _;
      }
      function setOwner(address _newOwner) public onlyOwner {
       owner = _newOwner;
      }
  3. События:

    • Отправка события:
      event NewValue(string value);
      function setValue(string memory _value) public {
       emit NewValue(_value);
      }
  4. Условные операторы:

    • Использование операторов if-else:
      function checkValue(uint _value) public pure returns (string memory) {
       if (_value > 10) {
           return "Value is greater than 10.";
       } else {
           return "Value is less than or equal to 10.";
       }
      }
  5. Петли:

    • Использование цикла for:

      function sumNumbers(uint[] memory _numbers) public pure returns (uint) {
       uint sum = 0;
       for (uint i = 0; i < _numbers.length; i++) {
           sum += _numbers[i];
       }
       return sum;
      }
    • Использование цикла while:

      function countdown(uint _start) public pure {
       uint i = _start;
       while (i > 0) {
           // Do something
           i--;
       }
      }

Это всего лишь несколько примеров методов, которые можно использовать в смарт-контракте. Возможности огромны, а конкретные используемые методы будут зависеть от требований контракта.