は、私は次のコードがあるとします。関数の結果をループするときにforeachはどのように機能しますか?
foreach(string str in someObj.GetMyStrings())
{
// do some stuff
}
はsomeObj.GetMyStrings()
ループの各反復で呼び出されますか?代わりに以下を実行する方が良いでしょうか。
List<string> myStrings = someObj.GetMyStrings();
foreach(string str in myStrings)
{
// do some stuff
}
?
試してみてください - 'GetMyStrings()'にブレークポイントを置き、デバッガがそこで停止する回数を確認してください! Disposeディスカッションのために+1 – AakashM