...,想必大家已经掌握了基本的概念。深入理解账户的概念能帮助我们更好的掌握开发套路。 这篇文章,我们从工程化的角度来带领大家使用 anchor 框架来实现一个 Bank 链上程序。 ## 环境准备: 在 [一文说透,如何在solana...
...储备金数值 - **安全防护**:防止通过直接转账影响价格计算 ## LP代币铸造逻辑 ### 核心设计理念 在 Uniswap V2 中,流动性管理被简化为 LP 代币管理: - **添加流动性**:合约铸造新的 LP 代币 - **移除流动性**:销毁对应的 ...
...(self, trade, current_profit: float, current_time) -> float | None: # 计算持仓时长,单位:分钟 hold_time = (current_time - trade.open_date_utc).total_seconds() / 60 # 持仓小于30分钟,设置严格止盈门槛,收益达到5%即止盈 if hold_time < 30: ...
...密钥中的任何一个泄露,都不会导致泄露任何其他密钥的优势。 主要优点之一是它**能够抵抗 nonce 重用**,这会影响 AES-GGM。 通过这种方式,攻击者可以从使用相同 nonce 值和加密密钥的两个密文中恢复明文。 发生这种情况时,...
...一个NFT来表示一个集合来实现的,这允许将NFT分类,并在区块链上验证集合信息。要检索集合中的所有NFT,可以使用集合地址,即集合NFT的铸造地址。如果你拥有属于某个集合的NFT,可以查看该NFT的元数据并在集合部分找到集合...
...:若下载脚本失败,检查网络连接或尝试使用代理,确保能访问 release.anza.xyz。 ### 4. 如何升级: 要升级 agave-install 工具以及相关的 Solana CLI(Agave), **运行更新命令**:使用 agave-install update 命令来升级到最新版本: ``...
...**: 适合需要固定大小且对内存敏感的场合(如底层算法优化),但日常开发中较少直接使用。 ## 2. **切片(Slice)** **定义**: 切片是基于数组的 **动态长度** 抽象,提供更灵活的容器。切片本身是引用类型,底层...
...edUsdt = USDT.balanceOf(address(_tokenDistributor)); // 计算referralFees总和 uint256 totalReferralFees = 0; for (uint256 i = 0; i < referralFees.length; i++) { totalReferralFees += referralFees[i]; } // 按比例分配...
...,所以将指令放在它的正上方。 当还原依赖于调用者或区块状态时,与 `vm.prank` 或 `vm.roll` 结合使用。 为什么要保持简洁? 在实践中,`expectRevert` 是一个单行守卫,要么静默通过,要么停止运行; 它的语义很简单。 ### `vm.expe...
... Web3 开发中,“将元数据上传到 IPFS”是确保 NFT 资产去中心化的行业共识。然而,许多教程对此一笔带过,让开发者在面对环境配置、节点操作和脚本自动化时困难重重。从 `ipfs init` 与 `daemon` 的区别,到实现图片和 JSON 的链式...
...主要考察了StaticCall这一知识点。 > 目前作者正在找智能合约相关的工作,希望能跟行业内人士多聊聊 🐟 。如果你觉得我写的还不错,可以加我的微信:woodward1993 ## 题目介绍: ![image20210705200543555.png](https://img.learnblockchain...