microavia / messgen

MIT License
9 stars 11 forks source link

Удобная работа со строками в C #3

Closed nameofuser1 closed 4 years ago

nameofuser1 commented 4 years ago

Сейчас со строками работать неудобно. Нужно подумать над интерфейсом для работы с ними.

Есть два пути:

  1. Сделать string альясом для массива байт в коде, а при парсинге дополнительно проверять терминатор. Тогда можно будет писать так:
    const auto * str = static_cast<char *>(msg.my_string.ptr)
  2. Сделать string полноценно отдельным типом и обрабатывать его тоже отдельно. Это вроде бы правильнее, но как его аккуратно вписать придется подумать, он вроде бы и не plain, и не встроенная структура, а в то же время и динамический.

Еще из предложений всегда передавать нул терминированную строку. Если нет терминатора, то на этапе генеренного парсинга возвращать ошибку.

DrTon commented 4 years ago

Done