Информация об изменениях

Сообщение Re[3]: Оцените качество кода на С++ от 18.09.2014 12:46

Изменено 18.09.2014 12:46 -n1l-

Здравствуйте, Кодт, Вы писали:

К>Здравствуйте, -n1l-, Вы писали:


N>>
N>>            do {    // pseudo-cycle to destruct tempRasters BEFORE doc-switching & CloseDocument()
N>>                KompasIteratorHolder tempApprox(CreateIterator(ALL_OBJ, 0));    // GetViewReference(0)));
N>>                if(!tempApprox) break;
N>>                elem = MoveIterator(tempApprox, 'F');
N>>            } while (0);
N>>

N>>вот это что за цикл на одно действие?

К>Это прикольнейшая идиома. Это не цикл, а goto end. В роли goto используется break.


И типа if тут никак? Чем это хуже?


KompasIteratorHolder tempApprox(CreateIterator(ALL_OBJ, 0));
if(!tempApprox){
 elem = MoveIterator(tempApprox, 'F');
}
Re[3]: Оцените качество кода на С++
Здравствуйте, Кодт, Вы писали:

К>Здравствуйте, -n1l-, Вы писали:


N>>
N>>            do {    // pseudo-cycle to destruct tempRasters BEFORE doc-switching & CloseDocument()
N>>                KompasIteratorHolder tempApprox(CreateIterator(ALL_OBJ, 0));    // GetViewReference(0)));
N>>                if(!tempApprox) break;
N>>                elem = MoveIterator(tempApprox, 'F');
N>>            } while (0);
N>>

N>>вот это что за цикл на одно действие?

К>Это прикольнейшая идиома. Это не цикл, а goto end. В роли goto используется break.


И типа if тут никак? Чем это хуже?


KompasIteratorHolder tempApprox(CreateIterator(ALL_OBJ, 0));
if(tempApprox){
 elem = MoveIterator(tempApprox, 'F');
}