Здравствуйте, Kluev, Вы писали:
Все равно не понял.
K>тем что когда пишем f("zzzzz") или f(str), где str — const char*
K>будет создан временный обьект стринг, а это как правило malloc+strlen+memcpy. А когда это еще произходит и в цикле то имеем неслабый оверхед. К примеру грузится что-то из хмл:
K>K>// вызывается в цикле
K>void Item::load( XmlNode &n )
K>{
this->>val = n.attrib_int("Val"); // вот здесь оверхед на создание стринг
this->>s = n.attrib_str("Zzz"); // и здес тоже
K>}
K>
Если мы захотим внутри attrib_int работать со строкой, нам все равно необходимо создать String из StrBox. Так какая разница, когда будет создан этот новый стринг ?