![](/img/trans.png)
[英]How can I resolve "Not all control paths return a value" error for integer
[英]with using a timefilter, i get the following error: '}' - not all control paths return a value
我收到錯誤:'}' - 並非所有控制路徑都返回一個值。 我在用:
int StartHour = 8;
int EndHour = 20;
這是我正在使用的代碼:
bool TimeFilter()
{
EndHour1=EndHour+GMTOffset;
StartHour1=StartHour+GMTOffset;
if ((StartHour+GMTOffset)<0) {StartHour1=StartHour+GMTOffset+24;}
if ((EndHour+GMTOffset)<0) {EndHour1=EndHour+GMTOffset+24;}
if ((StartHour+GMTOffset)>24) {StartHour1=StartHour+GMTOffset-24;}
if ((EndHour+GMTOffset)>24) {EndHour1=EndHour+GMTOffset-24;}
if (Use_TimeFilter==false) {comment1=""; return (true);}
else
if (StartHour1<EndHour1)
{
if (Hour()>=StartHour1 && Hour()<EndHour1)
{
comment1="";
return (true);
}
comment1="WARNING: Trading diluar Time Filter, No Open Position\n";
return (false);
}
else
if (StartHour1>EndHour1)
{
if (Hour()>=StartHour1 || Hour()<EndHour1)
{
comment1="";
return (true);
}
comment1="WARNING: Trading diluar Time Filter, No Open Position\n";
return (false);
}
}
出了什么問題以及如何解決此問題,因此我不再收到此錯誤。 提前致謝
您正在使用多個嵌套的if
else
語句,並且存在一種可能的情況,這將導致所有if
語句都沒有被執行(即Use_TimeFilter=True
和StartHour1==EndHour1
)。 因此,您只需在代碼中添加最終的return(false)
語句。
bool TimeFilter()
{
EndHour1=EndHour+GMTOffset;
StartHour1=StartHour+GMTOffset;
if((StartHour+GMTOffset)<0) {StartHour1=StartHour+GMTOffset+24;}
if((EndHour+GMTOffset)<0) {EndHour1=EndHour+GMTOffset+24;}
if((StartHour+GMTOffset)>24) {StartHour1=StartHour+GMTOffset-24;}
if((EndHour+GMTOffset)>24) {EndHour1=EndHour+GMTOffset-24;}
if(!Use_TimeFilter) {comment1=""; return (true);}
else if(StartHour1<EndHour1)
{
if(Hour()>=StartHour1 && Hour()<EndHour1)
{
comment1="";
return(true);
}
comment1="WARNING: Trading diluar Time Filter, No Open Position\n";
return(false);
}
else if(StartHour1>EndHour1)
{
if (Hour()>=StartHour1 || Hour()<EndHour1)
{
comment1="";
return (true);
}
comment1="WARNING: Trading diluar Time Filter, No Open Position\n";
return (false);
}
return(false);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.