gpt4 book ai didi

c# - 快速创建类的新实例

转载 作者:太空狗 更新时间:2023-10-30 00:17:59 24 4
gpt4 key购买 nike

假设有以下情况:

必须从大量文件夹结构中检索日志文件,并将它们添加到列表中。

哪种情况占用机器的资源较少?

LogFile file;
foreach (string filepath in folderfiles)
{
file = new LogFile { path = filepath,
machine = machineName,
user = userName };
files.Add(file);
}

foreach (string filepath in folderfiles) 
{
LogFile logFile = new Logfile { path = filepath,
machine = machineName,
user = userName };
files.Add(file);
}

这会有什么不同吗?

最佳答案

在实践中,JIT(即时)编译器可能会优化这两种方法之间的任何差异。从概念上讲,第一个选项“更好”,因为编译器(假设没有优化)不必担心循环中变量的范围。

此外,对于这两种方法,new LogFile() 创建的新实例将超出范围,并且有资格在大约同一时间进行垃圾回收。

简而言之,完全编译时没有显着差异(如果有的话)。

关于c# - 快速创建类的新实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46545526/

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