我问的原因是,它只在方法参数声明中有效,不是吗?我试图在函数体内创建一个名为“params”的变量,但这当然没什么大不了的,只是想知道 MS 选择将其设为全局关键字而不是上下文关键字的原因。
最佳答案
对于任何其他关键字也可以问同样的问题。例如,为什么“class”不是上下文相关的,因为它只用于类声明中?
对我来说,关键字就是关键字。我想它极大地简化了编译的词法分析部分,不必是上下文感知的。
另外,您可以使用 @
符号来声明一个名为“params”(或任何其他保留关键字)的变量:
var @params = new int[] { 1, 2 };
关于c# - 为什么 params 关键字不是上下文相关的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4609501/