【发布时间】:2021-02-08 15:53:01
【问题描述】:
似乎对于整数,我可以传递一个数组或逗号分隔的整数。但是对于枚举,只有逗号分隔的枚举有效。为什么会这样?
enum Animal { Dog, Cat, Mouse};
void Caller()
{
int[] aaa = { 1, 2, 3 };
Ints(1, 2, 3);
Ints(aaa);
Animal[] bbb = { Animal.Dog, Animal.Cat, Animal.Mouse };
Enums(Animal.Dog, Animal.Cat, Animal.Mouse);
//CS1503 Argument 1: cannot convert from 'Animal[]' to 'System.Enum'
Enums(bbb);
}
void Ints(params int[] aaa)
{
}
void Enums(params Enum[] aaa)
{
}
【问题讨论】: