三元运算中的新运算符

时间:2019-06-13 23:47:16

标签: c# ternary-operator

尝试用三元运算符替换if条件:

 Namer n;

 n = i > 0 ? new LastFirst(name) : new FirstFirst(name);

这是我遇到错误的地方:

  

由于'LastFirst'和'FirstFirst'之间没有隐式转换,因此无法确定条件表达式的类型

当我替换回“ If-else condition”时,它会起作用:

 Namer n;

  if (i > 0)
      n = new LastFirst(name);
  else
      n = new FirstFirst(name);
Namer 基类

派生的

LastFirst,FirstFirst

0 个答案:

没有答案