所以我有一个返回2个值的元组的函数,我想将这些值分配给结构的两个不同成员。有没有一种方法可以不必调用函数两次并分别提取每个值?
我在想类似的东西:
let mut my_struct : MyStruct = MyStruct {
(member1, member2): function_that_returns_tuple()
}
当前,我在两个临时变量上调用该函数,然后将它们移至struct成员,但我想知道是否有一种方法可以在初始化中直接进行操作。
答案 0 :(得分:1)
我相信您现有的方法是正确的。如果将变量命名为struct成员,则可以避免使用显式member: value
语法:
let (member1, member2) = function_that_returns_tuple();
MyStruct { member1, member2, }