【发布时间】:2018-11-01 05:44:09
【问题描述】:
在浏览代码库时,我遇到了类似于以下的语句:
new Class().MemberFunction();
这个语句实际上在做什么?是在不创建这个类的对象的情况下调用成员函数吗?
【问题讨论】:
-
它与
Class myInstance = new Class(); myInstance.MemberFunction();相同,只是它不使用变量。new创建对象/实例;并且在这两种情况下,[member] 方法调用都会在评估为实例的表达式 上调用。这与AMethodReturningAnObjectOfClassThatMightBeNewOrReused().MemberFunction()“有效”的原因相同:在适当的Class的表达式 上调用该成员。
标签: c#