<分区>
当我编写以下代码时,Resharper 显示此警告:“分配的值未在任何执行路径中使用”:
List<obj> testObj = new List<obj>();
testObj = testMethod();
在这里testMethod()
返回类型 List<obj>
.但是,当我直接分配 testMethod()
时如果不实例化它,我不会收到警告。
List<obj> testObj = testMethod();
请原谅我的无知,如果我缺少基础知识但我没有遵循编译器如何为 testObj
分配内存没有实例化它。
其中一个帖子提到了类似的问题:C# Is this initialiser really redundant?但我没有找到关于 testObj
在哪里的问题的答案变量正在存储它从 testMethod
接收到的值?与原始数据类型不同,“对象类型”只有在实例化后才能存储值。如果我遗漏了什么,请告诉我。