- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
bool operator ==( const CClass& lhs, const CClass& rhs )
{
bool rc = true;
// No self-comparison...
if ( &lhs != &rhs )
{
// Do not compare fields if result is already false...
if ( rc )
{
rc = ( lhs.frameId() == rhs.frameId());
}
if ( rc )
{
rc = ( lhs.objectId() == rhs.objectId());
}
if ( rc )
{
rc = ( lhs.type() == rhs.type() );
}
if ( rc )
{
rc = ( lhs.transition() == rhs.transition() );
}
if ( rc )
{
rc = ( lhs.rotation() == rhs.rotation() );
}
}
return rc;
}
Кто-то не слышал про short-circuit evaluation.
но вообще автору бы выучить оператор &&
Как в GO, например. Везде скобочки и вменяемые ошибки парсинга.
Само собой.
Вот в том же GO после есле ожидается if или {.
Так они за счёт принудительных скобок сделали понятным для парсера где оканчивается условие (аналог THEN) и тем самым выпилили другие обязательные, и гораздо более раздражающие меня скобки на условиях.
Так что баланс скобок не только остался неизменным, но еще и упростил язык.
http://ideone.com/f1A0IP
По двум причинам:
1. if (condition) { one_line_statement; } отбирает ценнейшее место на экране.
2. Дуракам, неспособным писать one line statement без скобок, нет места в профессии и исскустве.
Никак нет. Typicam crucis scortum.
Норм?