入力ファイルを読み取った後に文字列errMsg
を出力しました。ref型、StringBuilder
Streamwriter swpt = new Streamwriter(....);
private void PrintErrorMessage(bool success, string errTitle, string errMsg)
{
if (!success)
{
swRpt.WriteLine(errTitle + errMsg);
}
}
は、質問はこれです::代わりに一人ひとりにStringBuilder
を追加すると、それはここで私は、エラーを印刷する方法ですPrintErrorMessage(string)
//Validations
//First Validation: checks the value of input string realization.
success = Numerical.Check("Realizations", inputs.realizations.ToString(), out ltester, out errMsg);
sb.AppendLine(errMsg);
//Second Validation: checks the value of the input string diameter.
success = Numerical.Check("Pipe Outside Diameter", inputs.pipeOD.ToString(), out dtester, out errMsg);
sb.AppendLine(errMsg);
if (!success)
{
PrintErrorMessage(success, errTitle, sb.ToString());
}
メソッドを呼び出しsuccess==false
場合は検証が行われた後、検証のたびにステップを実行して、ref型を使用してPrintErrorMessage
関数に渡して追加することはできますか?
「StringBuilder」はここでは悪い選択かもしれません。どのくらいの文字列ですか?このコードはタイトなループで呼び出されていますか?これが問題領域であることを示すパフォーマンス統計がありますか? http://www.yoda.arachsys.com/csharp/stringbuilder.html – asawyer
はい、オブジェクトであるため、デフォルトで参照渡しされます。 –
2番目のテストで最初の(成功)結果が破棄されるため、これは擬似コードに過ぎません。しかし、このコンテキストから、私はStringBuilderを使用して少し過剰だと言うでしょう – Steve