一直在寻找,但运气不佳,我想创建一个仅允许将某些项目作为第一个参数传递的函数。
例如它应该只允许以下字符串:
"error", "warning", "info"
那么电话将是
showme("error");
or showme("warning");
or showme("info");
可以这样做吗?我知道我可以定义
showme(string type){}
但理想情况下我需要
showme(string type "error"){}
最佳答案
我建议一个 enum
public enum ErrorType {
error,
warning,
info
}
public void ShowMe(ErrorType errorType) {
switch (errorType) {
case ErrorType.error:
//do stuff
break;
case ErrorType.warning:
//do stuff
break;
case ErrorType.info:
//do stuff
break;
default:
throw new ArgumentException("Invalid argument supplied");
break;
}
}
//Invoke the method
ShowMe(ErrorType.info);
关于c# - 函数中的预定义参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9079653/