我可以解压这样的经典元组:
let pair = (1, true);
let (one, two) = pair;
如果我有一个元组结构,例如struct Matrix(f32, f32, f32, f32)
,我尝试解压缩它,我收到一个关于“意外类型”的错误:
struct Matrix(f32, f32, f32, f32);
let mat = Matrix(1.1, 1.2, 2.1, 2.2);
let (one, two, three, four) = mat;
导致此错误:
error[E0308]: mismatched types
--> src/main.rs:47:9
|
47 | let (one, two, three, four) = mat;
|
= note: expected type `Matrix`
found type `(_, _, _, _)`
如何解压缩元组结构?我是否需要将其显式转换为元组类型?或者我需要对其进行硬编码吗?
答案 0 :(得分:8)
这很简单:只需添加类型名称!
import boto3
client = boto3.client('ec2')
response = client.modify_volume(VolumeId='vol-xxxxxxxx',VolumeType='io1',Iops=100)
这可以按预期工作。
它与普通结构完全相同。在这里,您可以绑定到字段名称或自定义名称(如struct Matrix(f32, f32, f32, f32);
let mat = Matrix(1.1, 1.2, 2.1, 2.2);
let Matrix(one, two, three, four) = mat;
// ^^^^^^
):
height