你经常看到人们说他们有一百万行代码项目。这是怎么测量的?这个号码是“信息”菜单下显示的号码吗?手册说只计算可编辑行(因此,没有注释和空行):
源编译 - >显示已编译的总行数。
但是手册没有解释如何计算一段代码,如果/或/其他是:
if B=true
then
for i:= 0 to 100
do Stuff
else ;
答案 0 :(得分:4)
编译器告诉您的Total lines
正在计算单元中的行数,而不管那些代码是什么(或不是代码)。它甚至算上空白行。开始一个新项目。编译它并记下它所说的行数(我说42)。然后,在某处添加一个换行符,然后再次编译。它将声称还有一行代码(43)。因此,编译器似乎没有考虑任何代码来考虑这个数字 - 只有实际的换行符。
实际上,如果在主窗体的单元(新项目)中添加行总数以及项目的主文件,它将比编译器告诉您的总数少2(42个中的40个)。所以除了粗略估计之外,我不相信这个数字意味着什么。
此计数中不包括VCL,RTL和Indy等库,因为这些库是预编译的。您的项目可能会引用需要编译的库或外部单元,因此它也会包含在计数中。
至于你提到它如何计算if..then..else
块,请记住,你的5行代码只能组合成一行代码(剥离换行符),它仍然可以编译,并且编译器只计算1行,而不是5行。