Re[3]: Вообще не понимаю, о чем разговор...
От: degor Россия  
Дата: 17.06.08 10:24
Оценка: 10 (2)
Здравствуйте, Kluev, Вы писали:

K>Здравствуйте, degor, Вы писали:


D>>как можно всерьез обсуждать кусок кода, который даже собрать без геморроя нельзя? тем более такой кусок, который жрет числа вида -.A и не давится?


K>Вполне можно. Ты же сам понимаешь, что велосипеды доделываются согласно потребностям, а этот код без проблем отпарзил гигабайты данных за несколько лет

K>и оттестирован на всех возможных use case в реальных условиях.

дружище, научись, наконец, понимать прочитанное. ты сделал заявку на мегабыстрый велосипед, и сравнил его с crt и бустом. при этом у широких масс нет возможности (без геморроя) изучить твое решение. ни с точки зрения правильности, ни с точки зрения производительности.

вот тебе use case: "-.A". мегавелосипед возвращает num_parse_ok,а должен возвращать num_parse_syntax.

теперь о производительности. разбор гигабайтов данных врядли делается отдельными строками, скорее целыми буферами. и strtod тут действительно не подходит.

но давайте будем честными перед собой, strtod() делает гораздо больше работы, чем твой велосипед. он использует локаль, проверяет специальные случаи, да и strlen() ему приходится делать в каждом цикле, а ты делаешь это только раз. и что-то я сомневаюсь, что гигабайты данных состоят сплошь из строк одного размера.

и о методике. возьми чиселки подлиннее, например, символов из 30, и увидишь, что преимущество велосипеда над crt уже не столь велико.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.