如何使自定义类的实例返回bool
本文关键字:实例 返回 bool 何使 自定义 | 更新日期: 2023-09-27 18:20:04
someList
此处将返回bool
值:
List<int> someList = new List<int>();
if(someList) { }
在下面的行中,编译器将警告我,说我不能将类型CustomType
隐式转换为bool
:
CustomType t = new CustomType();
if(customType) {}
那么,如何让类的实例返回bool
呢?甚至是其他东西,比如integer
或float
?
在CustomType类中,您可以定义一个隐式转换运算符为bool:
public static implicit operator bool(CustomType custom)
{
return true; // Place your logic here
}
定义隐式转换运算符时应小心,以避免无法维护的代码。我建议您考虑在CustomType类中有一个方法或属性,该方法或属性返回基于某种逻辑的布尔值:
public bool IsValid { get { return true; // Place your logic here } }