c# - c#中参数前使用 "this."是不是占用更多内存?

标签 c# memory this

不只是按原样调用参数吗?

最佳答案

如果您指的是字段,则不是。无论您是显式使用 (this.foo) 还是隐式使用 (foo),编译器都会注入(inject)“this”( ldarg.0)。

但是,它确实在您的源代码中多占用了 5 个字符……因此在您的开发硬盘上占用了少量字节。它将在编译的 IL 或运行时产生完全零差异。

有两种使用“this”改变事情的场景:

  • 当存在同名变量/参数时(this.foo = foo;)
  • 解析扩展方法时(this.SomeMethod();)

关于c# - c#中参数前使用 "this."是不是占用更多内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/352720/

相关文章:

c++ - 读取进程内存

java - 在构造函数中使用 'this' 而不抛出 NullPointerException

c# - 如果在第一个 `else` 之后有一个 `return` ,这对性能有影响吗?

C++:关于内存管理,指针本身是如何处理的?

c# - 如何在 Nunit 中调用 WPF Dispatcher?

c++ - 为什么memcpy复制Eigen矩阵数据失败,std::copy成功?

javascript - 关于 Javascript 作用域解析

javascript - 调用 mylibray onclick 中的函数并传递此函数

c# - 在 Entity Framework Core 的系统版本时态表中查询数据

c# - 实例化一个类对象并初始化一个列表