[英]Logical help needed for if condition
我有3個變量持有值星期幾(星期枚舉),小時(0到23)和分鍾(0到23),這3個變量只能容納一個共同值N / A,其他值不同。 如果所有都是N / A或某些有效值,那么我必須執行特定的邏輯A.如果有人是NA而其他人是有效的那么我必須執行一些其他邏輯B
我使用if
語句嘗試了很多,但沒有能夠提出正確的解決方案。 有人可以給我一個暗示嗎?
所有值都是整數
bool weeklyCount = (dayofweek == weeklyHour) && (weeklyHour == weeklyMinute);
這不適合我。
在偽代碼中:
if (dow == NA && hour == NA && minute == NA ||
dow != NA && hour != NA && minute != NA) {
// logic A
} else {
// logic B
}
struct yourtime
{
enum Day
{
INVALID = -1,
SUNDAY,
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY
};
Day day;
int hour;
int minute;
yourtime() : day(INVALID), hour(INVALID), minute(INVALID) { }
bool isValid()
{
return (day != INVALID) && (hour != INVALID) && (minute != INVALID);
}
};
int main()
{
yourtime test;
std::cout << test.isValid() << std::endl;
}
利用枚舉與整數相同的事實。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.