期望值:,我认为比较运算符总是会调用const版本。const版本应该足够调用const版本?问题2:为什么可以称为非const版本?比较运算符(特别是与不可变的nullptr相比)不总是对const引用进行操作吗?编辑:bool operator==(T const* a, T const* b)
(因为
显然,反射是一个非常广泛的主题,但让我们举一个简单的例子:" is“运算符(A是B)。它实际上需要CLR做什么?要查看程序集的元数据,请找到类型A,遍历其继承层次结构,并查看B是否在其中的某个位置。我的意思是,CLR在运行时总是在非反射代码中进行类型检查。无论何时调用方法或为参数赋值,CLR都必须在运行时检查赋值对象的类型是否与其指定的参数或变量匹配。那么是什么让反射(我指的是简单的运算符,比如"is“或" as ")相对昂贵呢?