Есть ли какие-либо штрафы за производительность для 1-го образца по сравнению со 2-м и почему?
// 1. variable is declared inside the loop body
while(isSomethingTrue == true) {
std::string str;
findStr(str); // str initialization
processStr(str); // processStr does not change its argument
}
// 2. variable is declared outside the loop body
std::string str;
while(isSomethingTrue == true) {
findStr(str);
processStr(str);
}
findStr
иprecessStr
нетривиальны, это, скорее всего, не проблема. Сначала отметьте эталон, спросите позже. - person Borgleader   schedule 11.11.2014