Como chamar outro smart contract na Ethereum
Escrito por Alchemy
É possível, em Solidity, criar smart contracts que tomam emprestadas funções de outros contratos. Chamamos o smart contract que toma emprestado de caller smart contract, e o smart contract cuja função é emprestada de called smart contract.
Este artigo vai explicar quando desenvolvedores devem chamar outro contrato, com um tutorial e um exemplo de código.
Por que chamar outro contrato
Um dos maiores avanços que Ethereum trouxe para blockchains foi a capacidade de fazer upload e computar código on-chain. Depois que esses programas, conhecidos como smart contracts, são enviados para a blockchain, eles não podem ser editados. Qualquer um pode visualizá-los e, se codificados corretamente, podem ser interagidos por smart contracts, mesmo que seus donos não se conheçam, o que efetivamente transforma smart contracts em bibliotecas reutilizáveis. Um smart contract cujo dono pretendia usar seu código para um propósito pode ser reutilizado por milhares de outras pessoas para seus próprios casos de uso por meio de chamadas.
Outro motivo pelo qual as pessoas chamam outros smart contracts é que, durante a programação, seu smart contract original atingiu o limite de tamanho de 24.577 bytes antes de ser concluído. Para contornar isso, desenvolvedores movem funções suficientes para um novo smart contract de modo que fiquem abaixo do limite de bytes.
Exemplo de chamada de outro smart contract
Criamos dois exemplos de smart contracts abaixo para ensinar como um contrato pode chamar outro smart contract.
Chamar contrato e atualizar valores
Neste primeiro contrato, o valor contido em CalledContract é atualizado pelo CallerContract.
Enviando ETH com uma chamada
Neste segundo contrato, não apenas o valor de x em CalledContractReceivesEther é atualizado por CallerContractAndSendEther, como ETH também será enviado junto com a chamada.
Como aprender mais sobre Solidity
Quer aprender mais Solidity? Com a recente aquisição da ChainShot, uma plataforma de educação em Solidity, a Alchemy University está oferecendo um curso intensivo de 7 semanas para desenvolvedor Ethereum, originalmente um bootcamp de certificação de $3.000, gratuitamente ao público. Garanta sua vaga hoje!
Se você é novo no desenvolvimento em geral, o curso intensivo de JavaScript de 3 semanas da Alchemy é um ótimo pré-requisito antes de começar um bootcamp de Ethereum.
Visões gerais relacionadas
Solidity3 de dezembro de 2025
As 6 melhores IDEs de Solidity para desenvolvedores (2026)
Conheça as melhores IDEs para desenvolvimento em Solidity.
Solidity19 de novembro de 2025
Otimização de gas em Solidity: 12 técnicas para deixar seus smart contracts mais baratos e eficientes
Quer escrever código melhor e reduzir suas taxas de gas?
Solidity13 de novembro de 2025
12 boas práticas de segurança para smart contracts em Solidity
Proteja seus smart contracts com essas dicas e ferramentas de segurança de especialistas.

Construa magia blockchain
A Alchemy combina os produtos e ferramentas de desenvolvimento Web3 mais poderosos com recursos, comunidade e suporte lendário.