Resharper显示此警告:当我编写以下代码时,"在任何执行路径中都没有使用赋值":
List<obj> testObj = new List<obj>();
testObj = testMethod();
Run Code Online (Sandbox Code Playgroud)
这里testMethod()返回类型List<obj>.但是,当我直接分配testMethod()没有实例化它时,我没有得到警告.
List<obj> testObj = testMethod();
Run Code Online (Sandbox Code Playgroud)
请原谅我的无知,如果我错过了基础知识,但我没有关注编译器如何在testObj没有实例化的情况下分配内存.
其中一个帖子提到了类似的问题:C#这个初始化器真的是多余的吗?但是我没有找到任何关于我的问题的答案,关于testObj变量存储它收到的值的位置testMethod?与原始数据类型不同,"对象类型"只有在实例化后才能存储值.如果我错过了什么,请告诉我.