解释:错误提示“Shadows name 'signal' from outer scope”意味着在你的代码中,signal
这个名字被用在了两个不同的作用域(scope)中,其中一个作用域嵌套在另一个作用域内部。在内部作用域中,你重新定义了一个名为signal
的变量或者函数,这会**“遮蔽”(shadow)**外部作用域中同名的变量或函数。
因为在主函数内部也存在一个变量signal,这个变量和函数内部的变量重名了,假如你需要外部的变量signal在函数中起作用,则需要修改函数内部的变量,否则则不需要。
由于我们一般不会在函数内部直接使用外部变量,所以,可以取消掉这个语法检查。