使用代表会减慢我的程序吗?
我一直在避免它们,因为我真的不知道如果它们使我的程序变慢.我知道如果我导致(catch)异常,它使用相当多的CPU功率但我不知道代理和事件以及.NET对它们做了什么.
我有一个在枚举上运行的函数,但第一项的函数应该有点不同,例如:
void start() {
List<string> a = ...
a.ForEach(DoWork);
}
bool isFirst = true;
private void DoWork(string s) {
// do something
if(isFirst)
isFirst = false;
else
print("first stuff");
// do something
}
Run Code Online (Sandbox Code Playgroud)
你会如何重构这个以避免那个丑陋的旗帜?