gpt4 book ai didi

delphi - Delphi IDE如何计算SLOC?

转载 作者:行者123 更新时间:2023-12-03 18:26:58 25 4
gpt4 key购买 nike

您经常在这里看到人们说他们有X百万行代码项目。如何测量?是“信息”菜单下显示的数字吗?该手册说,仅计算可编译行(因此,不带注释和空行):


已编译源代码->显示已编译的总行数。


但是手册没有说明如何计算一段代码,就像/然后/否则:

if B=true
then
for i:= 0 to 100
do Stuff
else ;



是否每个带有蓝点的行都是“编译行”?
Embarcadero代码(RTL和VCL代码)和第3方库也包括在内了吗?
(结论)当有人说一个Delphi程序有100万行时,这是什么意思?

最佳答案

编译器告诉您Total lines计数的是单元中的行数,而不管其中有(或没有)什么代码。它甚至算空行。开始一个新项目。编译它并记下它说的行数(我的说是42)。然后,在某处添加一个换行符,然后重新编译。它将声明还有一行代码(43)。因此,似乎编译器没有考虑此数字的任何代码-仅实际的换行符。

实际上,如果将主窗体的单位(新项目)以及项目的主文件中的总行数相加,则总数将比编译器告诉您的总数少2(42中的40)。因此,除了一个粗略的估计,我不相信这个数字有什么意义。

VCL,RTL和Indy之类的库未包括在内,因为它们是预编译的。您的项目可能引用了需要编译的库或外部单元,因此也将这些内容包括在内。

关于您如何计算if..then..else块,请记住,您的5行代码可以组合为1行代码(剥离换行符),并且仍然可以编译,并且编译器仅计算1行,而不是5行。

关于delphi - Delphi IDE如何计算SLOC?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23722031/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com