首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >交易所如何称呼我的智能契约方法?

交易所如何称呼我的智能契约方法?
EN

Ethereum用户
提问于 2021-06-30 13:57:29
回答 1查看 46关注 0票数 0

我是新来的聪明的合同世界,有许多事情,我仍然不明白如何运作。

我用以下方法创建了一个简单的契约:

代码语言:javascript
复制
constructor()
{
    tokenCreator = msg.sender;
    balances[tokenCreator] = TokenMaxSupply;
    
    IUniswapV2Router02 uniswapV2Router = IUniswapV2Router02(0x10ED43C718714eb63d5aA57B78B54704E256024E);
    UniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
    UniswapV2Router = uniswapV2Router;
}

/**
* @dev Returns the total supply of this token
*/
function TotalSupply() public view returns (uint256)
{
    return TokenMaxSupply;
}

/**
* @dev Check the number of tokens owned by an address including holder reflections
*/
function CheckAddressBalance(address addressToCheck) public view returns (uint256)
{
    return balances[addressToCheck];
}

/**
* @dev Check the allowance between addresses
*/
function CheckAllowance(address from, address to) public view returns (uint256)
{
    return allowances[from][to];
}

/**
* @dev Transfers tokens from one address to another.
*/
function TransferTokens(address sendingAddress, address addressToSend, uint256 amount) public returns (bool)
{
    require(addressToSend != address(0), 'Invalid Address.');
    require(sendingAddress != address(0), 'Invalid sending Address.');
    require(balances[sendingAddress] >= amount, 'Not enough tokens to transfer.');
    
    //Decrease sender balance
    balances[sendingAddress] = balances[sendingAddress].sub(amount);
    
    //Add the new amount to receiver address
    balances[addressToSend] = balances[addressToSend].add(amount);
    
    emit Transfer(sendingAddress, addressToSend, amount);
    return true;
}

我的目标是部署合同并将其添加到pancakeswap中。

我的问题是:当有人想要在pancakeswap中购买我的令牌时,应该调用方法TransferTokens来添加/减去令牌。煎饼如何知道它需要调用这个函数?

或者,pancakeswap调用一个特定的方法,而我需要更改该方法的名称?

EN

回答 1

Ethereum用户

回答已采纳

发布于 2021-06-30 16:39:39

这是后者。

你的合同必须完全符合ERC20 20标准。不能使用像TransferTokens函数这样的函数。

Pancakeswap (以及几乎所有其他人)将调用在ERC20中定义的函数。不属于ERC20的自定义函数永远不会被调用。

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/102736

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档