Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rust 锈蚀E0061:某些(A)与某些(匹配…=>;A)不同_Rust_Match - Fatal编程技术网

Rust 锈蚀E0061:某些(A)与某些(匹配…=>;A)不同

Rust 锈蚀E0061:某些(A)与某些(匹配…=>;A)不同,rust,match,Rust,Match,这段代码编译得很好: Some(match head.path { "/" => Hello, "/num" => GetNum, p if p.starts_with('/') => HelloName(p[1..].to_string()), _ => PageNotFound }, RecvMode::Buffered(1024), scope.now() + Duration::new(10, 0)) 如果我把它改成 Some(Hello,

这段代码编译得很好:

Some(match head.path {
  "/" => Hello,
  "/num" => GetNum,
   p if p.starts_with('/') => HelloName(p[1..].to_string()),
   _ => PageNotFound
 }, RecvMode::Buffered(1024), scope.now() + Duration::new(10, 0))
如果我把它改成

Some(Hello, RecvMode::Buffered(1024),
         scope.now() + Duration::new(10, 0))
我明白了

error: this function takes 1 parameter but 3 parameters were supplied [E0061]
为什么??与相同的语义匹配吗

x>0?A:B
?

函数返回值声明为

Option<(Self, RecvMode, Time).

Option问题中的代码无法编译。在GitHub上的示例中,尽管您具有正确的元组构造语法

因此,对于问题中的第一个和第二个示例:在元组值周围添加括号以构造元组:

Some((Hello, RecvMode::Buffered(1024),
         scope.now() + Duration::new(10, 0)))

要将元组传递给选项枚举,必须首先构造元组

您问题中的代码无法编译。在GitHub上的示例中,尽管您具有正确的元组构造语法

因此,对于问题中的第一个和第二个示例:在元组值周围添加括号以构造元组:

Some((Hello, RecvMode::Buffered(1024),
         scope.now() + Duration::new(10, 0)))

要将元组传递给选项枚举,必须首先构造元组

请提供一个示例,它确保答案真正适合所描述的情况,并且在您的问题中没有输入错误。您确定您的第一个示例已经编译好了吗?链接的示例确实有额外的
()
来生成元组。@ChrisEmerson,对不起,它不会编译。我应该删除这个问题吗?但我还没有准备好——你可以在提出问题之前花上所有你想要的时间。所有语法错误都表明您没有花太多时间在问题上。如果你不想花时间问一个好问题,为什么有人要花时间提供一个好答案?请提供一个答案,它可以确保答案真正适合所描述的情况,并且你的问题中没有拼写错误。你确定你的第一个示例已经编译好了吗?链接的示例确实有额外的
()
来生成元组。@ChrisEmerson,对不起,它不会编译。我应该删除这个问题吗?但我还没有准备好——你可以在提出问题之前花上所有你想要的时间。所有语法错误都表明您没有花太多时间在问题上。如果你不想花时间问一个好问题,为什么要有人花时间提供一个好答案?请给出一些关于双亲的评论,为什么我需要(())?塔克斯
Some(x)
返回一个用
x
填充的
选项<代码>(a,b,c)
构造一个元组。因此,如果你想要一个用元组填充的
选项,你必须首先构造一个元组,然后将它传递给
Some
Some((a,b,c))
请给出一些关于双亲性的评论,为什么我需要(())?塔克斯
Some(x)
返回一个用
x
填充的
选项<代码>(a,b,c)
构造一个元组。因此,如果您想要用元组填充
选项
,您必须首先构造一个元组,然后将其传递给
Some
Some((a,b,c))