Если есть если блок, как этотУсловный если с ИЛИ проверки всех условий
if(foo() || foo2() || foo3())
{
//do some things
}
мне нужна только одна функция Foo вернуть истинный выполнить этот код. Но я должен назвать их всех. Проблема начинается, когда первый foo возвращает true. Таким образом, остальные foos (foo2 и foo3) не вызываются.
Я знаю, что я могу сделать это так:
bool foo1 = foo1();
bool foo2 = foo2();
bool foo3 = foo3();
if(foo1 || foo2 || foo3) {}
Но у меня есть 18 функции Foo, и это в нескольких частях моего кода. Есть ли какой-нибудь трюк, чтобы сделать это коротким и легким?
'|' будет работать только в том случае, если возвращаемые значения являются неотъемлемыми Они, возможно, были указатели –
@rob:.. I «Предположим, что они возвращают логические значения, потому что OP говорит« возвращает true ». –
-1 Это действительно хакерский и запутанный способ избежать использования трех переменных: –