求助:C#返回语句中单个等号写法的作用解析
解析C#返回语句中带单个等号的写法
这段代码里的返回语句return resultTable = dataAccessLayer.Read(readSql);是把赋值操作和返回操作合并成了一行,核心原因是C#的赋值表达式本身会返回被赋予的值。
具体执行逻辑分三步:
- 调用
dataAccessLayer.Read(readSql)获取DataTable类型的结果 - 将这个结果赋值给变量
resultTable - 把赋值后的
DataTable实例作为当前方法的返回值返回
它完全等价于分开写的两行代码:
resultTable = dataAccessLayer.Read(readSql); return resultTable;
另外要注意,原代码里的DataTable resultTable = GetTemplate();其实是冗余的——因为后面马上给resultTable赋了新值,GetTemplate()返回的实例会被直接丢弃,除非GetTemplate()方法本身有其他不可见的副作用(比如初始化全局资源),否则这行代码可以删除。
内容的提问来源于stack exchange,提问作者A person
相关产品推荐
相关产品推荐

