最近要写个获取累计的功能,原本打算用for循环进行累加,但是突然想起来list有个Sum()方法可以直接获取累计。于是产生了疑问,用sum和循环有什么区别?百度半天也没找到,去知乎问,说去看源码,现在我了解了,于是分享一下。
首先是如何查看源码:
相信有人和我遇到过一样的烦恼,写代码的时候想要看源码,但是f12却跑到元数据,没有详细代码。(在这里我吐槽一下,直接百度“.net源码”出来的是什么鬼。用Bing搜索“.net源码”第一个就是我要的)
网址 : Reference Sourcehttps://referencesource.microsoft.com/
附上截图
或许有人看到一堆英文就有点打退堂鼓了,不要慌,容我细细道来。
首先,在vs中进入元数据,选中要查看的方法然后按 f12。
附图:元数据页面
接下来往上拉,你可以看到命名空间和类名
附图 :
然后你就可以进入源码的网页进行查询了,通过命名空间和类名进行查询
附图
然后你就可以找你要看的方法了,我这里以Sum()方法为例
直接 Ctrl + f 进行查找,跟元数据进行对比,确定具体是那个方法
附图:
有一些代码看不懂没关系,可以慢慢查。但是可以看到Sum方法也是用循环进行累加的,也就是说本质上Sum()和我们用循环进行计算是没有区别的。