编译器警告-C#在调用方法时预先选择的参数值

本文关键字:选择 参数 -C# 警告 调用 方法 编译器 | 更新日期: 2023-09-27 17:59:56

我正在尝试制作一个方法/函数,它可以在两种模式下工作:位或十六进制
用户(程序员)应该在传递值和模式参数时调用此方法
我想将模式参数限制为字符串"bin"或"hex"。当用户传递另一个不需要的值(例如"dec")时,是否可能生成编译器错误或警告(或预编译器错误)?

可接受参数示例:

int decValueFromHex = convertToDec("111011","hex");
int decValueFromBin = convertToDec("111011","bin");

以下内容是不需要的,并且需要以某种方式生成错误。(最终编译前)

int decValueFromDec = convertToDec("111011","dec");
int decValueFromMood = convertToDec("111011","hey");

编译器警告-C#在调用方法时预先选择的参数值

否。不能对这样的参数应用规则。这就是使用enum的全部要点。

试试这个:

enum Mode
{
    bin, hex
}
convertToDec("111011",Mode.hex);