Re[2]: YAS: Yet Another Serialization
От: VTT http://vtt.to
Дата: 17.09.16 23:30
Оценка:
Собрал tests/base.
Студия 2015: 77 предупреждений
mingw (g++ 5.1): 356 предупреждений
clang 3.9: 345 предупреждений

глянул исходники:
template<typename Archive>
static Archive& save(Archive& ar, const std::string& string) {
  ar.write((std::uint32_t)string.length());
  ar.write(&string[0], string.length());
  return ar;
}

template<typename Archive>
static Archive& load(Archive& ar, std::string& string) {
  std::uint32_t size = 0;
  ar.read(size);
  string.resize(size);
  ar.read(&string[0], size);
  return ar;
}

1) большие (а в наше время не особо большие) данные молча криво обрабатываются?
2) &string[0] — это реально стремно
3) надлежащие инклюды для std::uint32_t и других простых стандартных типов отсутствуют
4) С-style cast

ЗЫ не стоит прописывать в решениях полные пути типа D:\msys\home\niXman\
Говорить дальше не было нужды. Как и все космонавты, капитан Нортон не испытывал особого доверия к явлениям, внешне слишком заманчивым.
Отредактировано 17.09.2016 23:48 VTT . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.