使用分配代理时出错? :语法
我已经创建了一个委托和两个匹配的方法。
private delegate bool CharComparer(char a, char b);
// Case-sensitive char comparer
private static bool CharCompare(char a, char b)
{
return (a == b);
}
// Case-insensitive char comparer
private static bool CharCompareIgnoreCase(char a, char b)
{
return (Char.ToLower(a) == Char.ToLower(b));
}
当我尝试使用以下语法将这些方法中的任何一个分配给委托时(请注意,此代码位于同一类的静态方法中):
CharComparer isEqual = (ignoreCase) ? CharCompareIgnoreCase : CharCompare;
我收到错误:
无法确定条件表达式的类型,因为“方法组”和“方法组”之间没有隐式转换
我可以使用常规的if ... else
语句来完成这项任务,它的工作正常。但我不明白为什么我不能使用更紧凑的版本,我不明白错误信息。有谁知道这个错误的含义?
没有找到相关结果
已邀请:
2 个回复
埃输林桨铃
,以便编译器知道使用该类型:
俯乡骚钵皆