Struct 使用返回Rust中元组的函数初始化两个结构成员
所以我有一个函数,它返回一个由2个值组成的元组,我想把这些值赋给一个结构的两个不同成员。有没有一种方法可以做到这一点,而不必调用函数两次并分别提取每个值 我的想法是:Struct 使用返回Rust中元组的函数初始化两个结构成员,struct,rust,initialization,tuples,Struct,Rust,Initialization,Tuples,所以我有一个函数,它返回一个由2个值组成的元组,我想把这些值赋给一个结构的两个不同成员。有没有一种方法可以做到这一点,而不必调用函数两次并分别提取每个值 我的想法是: let mut my_struct : MyStruct = MyStruct { (member1, member2): function_that_returns_tuple() } 目前,我正在对两个临时变量调用函数,然后将它们移动到结构成员,但我想知道是否有一种方法可以直接在初始化中执行此操作。我相信您现有的方法
let mut my_struct : MyStruct = MyStruct {
(member1, member2): function_that_returns_tuple()
}
目前,我正在对两个临时变量调用函数,然后将它们移动到结构成员,但我想知道是否有一种方法可以直接在初始化中执行此操作。我相信您现有的方法是正确的。如果将变量命名为结构成员,则可以避免显式的member:value语法:
let (member1, member2) = function_that_returns_tuple();
MyStruct { member1, member2, }