Tag: switch语句

带代表或开关的字典?

我正在编写一个解析器,它调用一些依赖于某些值的函数。 我可以用这样的简单开关实现这个逻辑: switch(some_val) { case 0: func0(); break; case 1: func1(); break; } 或者与代表和这样的字典: delegate void some_delegate(); Dictionary some_dictionary = new Dictionary(); some_dictionary[0] = func0; some_dictionary[1] = func1; some_dictionary[some_value].Invoke(); 这两种方法是否相同,哪种方法更受欢迎?