我需要清除此警告:變量「MyException」聲明,但從未使用
try
{
doSomething()
}
catch (AmbiguousMatchException MyException)
{
doSomethingElse()
}
的編譯器告訴我:
變量「MyException」聲明,但從未使用
我該如何解決這個問題。
我需要清除此警告:變量「MyException」聲明,但從未使用
try
{
doSomething()
}
catch (AmbiguousMatchException MyException)
{
doSomethingElse()
}
的編譯器告訴我:
變量「MyException」聲明,但從未使用
我該如何解決這個問題。
您可以像這樣刪除它:
try
{
doSomething()
}
catch (AmbiguousMatchException)
{
doSomethingElse()
}
使用警告禁止這樣的:
try
{
doSomething()
}
#pragma warning disable 0168
catch (AmbiguousMatchException exception)
#pragma warning restore 0168
{
doSomethingElse()
}
其他熟悉的警告禁用
#pragma warning disable 0168 // variable declared but not used.
#pragma warning disable 0219 // variable assigned but not used.
#pragma warning disable 0414 // private field assigned but not used.
甲所有編譯器的錯誤和警告列表都可以在[MSDN](http://msdn.microsoft.com/en-US/library/ms228296(V = VS。 80).aspx) –
由@ fparadis2給出的解決方案是更好的,因爲不建議當我們修復它時禁止警告 – Rama
@dasariramacharanprasad這是我的第一個建議,重新閱讀我的答案;) –
您聲明瞭異常的名稱MyException,但您從不對其執行任何操作。由於沒有使用它,編譯器指出了它。
您可以簡單地刪除名稱。
catch(AmbiguousMatchException)
{
doSomethingElse();
}
你可以簡單的寫:
catch (AmbiguousMatchException)
,如果你不會的catch子句中使用它省略異常名。
因爲它解決了警告!未在[MSDN](http://msdn.microsoft.com/query/dev10.query?appId=Dev10IDEF1&l=zh-CN&k=k(RETHROWTOPRESERVESTACKDETAILS)中解釋; k(TargetFrameworkMoniker-%22.NETFRAMEWORK%2cVERSION%3dV4.0 %22); K(DevLang-CSHARP)RD =真)。 – Rama
麻煩的是,您沒有在任何地方使用變量MyException
。它被聲明,但沒有被使用。這不是一個問題......只是編譯器給你一個提示,以防你打算使用它。
如果您有一個運行,您可以將異常寫入日誌。可能有助於追蹤任何問題。
Log.Write("AmbiguousMatchException: {0}", MyException.Message);
將在哪裏存儲錯誤消息? –
使用趕上(例外) –