请告诉我这个c#代码有什么问题.
public bool CloseCOMPort()
{
try
{
bool isClosed = false;
if (oSerialPortMisc != null && oSerialPortMisc.IsOpen)
{
oSerialPortMisc.Close();
isClosed=true;
}
else
{
isClosed = false;
}
return isClosed;
}
catch (Exception exp)
{
}
}
Run Code Online (Sandbox Code Playgroud)
当我编译这段代码时,它会给出错误."并非所有代码路径都返回一个值".我不知道这里的错误.请帮助.. Thanxxx ...... :)
该方法并不总是返回值.你的编译器应该告诉你同样的事情.
值(isClosed)仅在try { .. }块内返回.现在,想象一下如果某些内容在返回到return语句之前失败(抛出异常),代码将继续在catch { .. }其中不返回任何内容,这就是您的代码无法编译的原因.
您应该return在方法的底部放置一个语句.
定义isClosed方法的顶部并将其返回到底部,无论如何.
public bool CloseCOMPort()
{
bool isClosed = false;
try { .. }
catch { .. }
return isClosed;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
440 次 |
| 最近记录: |