【区块链安全 | 第十八篇】类型之引用类型(二)

在这里插入图片描述

引用类型

数组切片

数组切片是对数组中连续部分的一种视图。它的语法为 x[start:end],其中 start 和 end 是表达式,结果类型为 uint256(或者可以隐式转换为 uint256)。切片的第一个元素是 x[start],最后一个元素是 x[end - 1]。

  • 如果 start 大于 end,或者 end 超过数组的长度,会抛出异常。

  • start 和 end 都是可选的:start 默认为 0,end 默认为数组的长度。

数组切片本身没有成员。它们可以隐式地转换为其底层类型的数组,并支持索引访问。索引访问相对于切片的起始位置,而不是底层数组的绝对位置。

注意: 目前,数组切片仅在 calldata 类型的数组上可用。数组切片在 ABI 解码函数参数时非常有用,特别是在处理来自外部调用的数据时:

// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.8.5 <0.9.0;

contract Proxy {
    /// @dev 代理管理的客户端合约地址
    address client;

    constructor(address client_) {
        client = client_;
    }

    /// 在对地址参数进行基本验证后
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋说

感谢打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值