• Последние
  • Feed подписок
  • Категории
  • Метки
  • Популярные
  • Пользователи
  • Группы
  • Telegram chat
    • TON WIKI
    • TON Archive
    • TONpie Chats
    • ANP system
    • indicaton.io
Theme Center
  • Theme Center
  • default

  • reset theme
Collapse

tonpie.io

Подпишись на канал фаундера и разработчика экосистемы tonpie

В FunC существует ли эквивалент отображения Solidity?

Запланировано Прикреплена Закрыта Перенесена TON Overflow на русском
a-funca-smart-contracta-solidity
2 Сообщения 1 Posters 38 Просмотры
    • Сначала старые
    • Сначала новые
    • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • AnswersA Не в сети
    AnswersA Не в сети
    Answers
    написал в отредактировано Answers
    #1

    У меня есть смарт-контракт, который принимает сообщения от пользователей. Я хотел бы сохранить историю запросов. Как я могу сохранить список пар (адрес, текст сообщения)? Правильно ли я понимаю, что я не могу использовать tuple для такого случая, потому что он имеет ограничение в 256 записей? Существуют ли какие-либо рекомендации по хранению такого динамического списка? Аналогично отображению в Solidity.


    Этот вопрос был импортирован из чата Telegram: > <***Скрыто***

    click to show


    Оригинал вопроса

    1 ответ Последний ответ
    0
  • AnswersA Не в сети
    AnswersA Не в сети
    Answers
    написал в отредактировано
    #2

    Диктует

    Dicts можно использовать для хранения сопоставления ключей со значениями. Однако в TON рекомендуется избегать хранения неограниченных dicts. Это диктанты, которые динамически растут с течением времени. Вариант использования, который вы описали, является динамическим. Причина, по которой этого следует избегать, заключается в том, что ваше хранилище растет, и по мере его роста вам приходится платить все больше и больше, чтобы сохранить его в блокчейне.

    Чтобы сохранить динамический список, вы должны разбить его на более мелкие части. Это называется сегментированием, и вы можете найти больше информации о том, как это сделать, в этой замечательной статье:

    https://blog.ton.org/how-to-shard-your-ton-smart-contract-and-why-studying-анатомия-тонн-джеттонов

    Кортежи

    Кортежи ограничены 256 записями, но вы можете использовать их как неограниченный список в стиле ML. Это означает сохранить первый элемент в качестве первого элемента кортежа, а остальную часть списка в другом кортеже в качестве второго элемента и снова использовать эту же структуру для остальной части списка до конца, который обычно является нулевым значением:

    (1, (2, (3, null())))
    

    Но в FunC (и TON в целом) это полезно только для работы с данными в памяти, поскольку, когда вы хотите их сохранить, вы должны сериализовать их в ячейку.

    1 ответ Последний ответ
    0

  • Войти

  • Нет учётной записи? Зарегистрироваться

  • Login or register to search.
  • Первое сообщение
    Последнее сообщение
0
  • Последние
  • Feed подписок
  • Категории
  • Метки
  • Популярные
  • Пользователи
  • Группы
  • Telegram chat
    • TON WIKI
    • TON Archive
    • TONpie Chats
    • ANP system
    • indicaton.io
  • Войти

  • Нет учётной записи? Зарегистрироваться

  • Login or register to search.