constant - demonoved/A-trial-run-in-solidity GitHub Wiki
// SPDX-License-Identifier: MIT
// compiler version must be greater than or equal to 0.8.20 and less than 0.9.0
pragma solidity ^0.8.23;
contract constants{
//соглашение о кодирование константы в верхнем регистре
address public constant MY_ADDRESS = 0x777788889999AaAAbBbbCcccddDdeeeEfFFfCcCc;
uint public constant MY_UINT = 123;
}
В данном примере кода мы определяем контракт constants, который содержит две константы: MY_ADDRESS и MY_UINT.
Константа MY_ADDRESS имеет тип address и содержит фиксированное значение 0x777788889999AaAAbBbbCcccddDdeeeEfFFfCcCc. Address в блокчейне Ethereum представляют собой идентификаторы, используемые для указания места расположения контрактов или участников сети.
Константа MY_UINT имеет тип uint (целое число без знака) и содержит значение 123. uint используется для представления положительных целых чисел.
Обе константы объявлены с модификатором constant, что означает, что их значения не могут быть изменены после компиляции и развертывания контракта. Отличительная особенность констант - их значения известны на этапе компиляции и хранятся непосредственно в самом контракте, что позволяет другим функциям использовать их без необходимости изменения состояния контракта.
В данном контракте также применяется соглашение о кодировании, согласно которому имена констант записываются в верхнем регистре. Это помогает отличать константы от других переменных в коде и упрощает чтение и понимание программы.