небольшой timekiller
От: skeptic  
Дата: 08.04.10 11:03
Оценка: 7 (5) +1 -2
тут

Я таки прошёл, хоть и не с первого раза конечно )
Re: небольшой timekiller
От: Wolverrum Ниоткуда  
Дата: 08.04.10 14:42
Оценка:
Здравствуйте, skeptic, Вы писали:

S>тут


S>Я таки прошёл, хоть и не с первого раза конечно )


Я чувствовал, я всегда чувствовал, что на плюсах чего-то более сложного, чем helloWorld<T>(...) пейсать не стоит.
Re[2]: небольшой timekiller
От: NikeByNike Россия  
Дата: 08.04.10 14:43
Оценка: +1
Здравствуйте, Wolverrum, Вы писали:

W>Я чувствовал, я всегда чувствовал, что на плюсах чего-то более сложного, чем helloWorld<T>(...) пейсать не стоит.


Альтернативы нет Тем более, что баги там либо пустяковые, либо вызваны низкой культурой кодирования.
Нужно разобрать угил.
Re[3]: небольшой timekiller
От: Spiceman  
Дата: 08.04.10 14:59
Оценка:
Здравствуйте, NikeByNike, Вы писали:

NBN>Альтернативы нет Тем более, что баги там либо пустяковые, либо вызваны низкой культурой кодирования.


Кстати, ошибка компиляции — это не баг. То что компилятор навязывает культуру кодирования — минус компилятору (это я про оператор присваивания = и оператор равенства =).
Re[4]: небольшой timekiller
От: Wolverrum Ниоткуда  
Дата: 08.04.10 17:18
Оценка:
Здравствуйте, Spiceman, Вы писали:

S>это я про оператор присваивания = и оператор равенства =.

Так это минус, собственно, языка, а не компилятора.
Re: небольшой timekiller
От: игппук Беларусь  
Дата: 08.04.10 17:49
Оценка:
ну особо не сталкивался с софтом NVidea, но если для них мерило профессионализма — это поиск бага за 10 секунд, то с их софтом мне связываться не охота.
проклятый антисутенерский закон
Re[2]: небольшой timekiller
От: skeptic  
Дата: 08.04.10 18:18
Оценка:
Здравствуйте, игппук, Вы писали:

И>ну особо не сталкивался с софтом NVidea, но если для них мерило профессионализма — это поиск бага за 10 секунд, то с их софтом мне связываться не охота.


Блин, ну что ж вы все такие прямые то. ) Право, горе от ума.
Просто по рсс пришло, посмотрел, показалось интересно, репостнул сюда...
народ не понял судя по минусу и комментам..)) take it easy(c)
Re[3]: небольшой timekiller
От: Bash  
Дата: 08.04.10 18:49
Оценка:
Здравствуйте, skeptic, Вы писали:

S>Просто по рсс пришло, посмотрел, показалось интересно, репостнул сюда...


А ты все репостишь из того, что набрызгало?

S>народ не понял судя по минусу и комментам..)) take it easy(c)


Да, нет, это -- просто тупняк и неинтересно.
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>
Картинки в подписи -- не нужны!
Re: небольшой timekiller
От: IID Россия  
Дата: 08.04.10 19:45
Оценка:
Здравствуйте, skeptic, Вы писали:

S>тут


S>Я таки прошёл, хоть и не с первого раза конечно )


Стал героем, но последнее задание лажовое. Там ещё одна неточность и ещё один баг есть, которые не заметили бравые NVidia-вцы:
std::string StringReplace(const std::string& what, const std::string& with,
                         const std::string& in_here, int limit )
{
    int i = 0;
    std::string return_value = 0; //< вот тут баг по версии NVidia
    return_value = in_here;

    while ( pos != return_value.npos && ( limit == -1 || i  < limit )  ) //< Вот тут неточность, надо сравнивать с std::string::npos
    {
        return_value.replace( pos, what.size(), with );
        pos = return_value.find( what, pos ); //< А вот тут незамеченный баг
        i++;
    }

    return  return_value;
}


Незамеченный баг заключатеся в том, что если строка with включает в себя строку what, то выполнение зациклится, отжирая память. Ну или без отжирания памяти, в частном случае включения, когда эти строки равны.
Фикс очень простой, после реплейса, но переда началом поиска надо сдвинуть pos на значение with.size().
kalsarikännit
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.