Size: a a a

2020 August 13

ПК

Побитый Кирпич... in pro.cxx
Andrei K
Не совсем так. Байты в реальных приложениях практически всегда рассматриваются как числа, увы. Ну или в тех приложениях где я работаю. Криптография, сериализация и маршаллинг данных.
Может быть в крипте и рассматриваются, но в сериализации и маршалинге это как раз просто хранение чего то в виде сырых байт
источник

AK

Andrei K in pro.cxx
Если кто-то подскажет, будет здорово.
источник

AK

Andrei K in pro.cxx
Aidar Fattakhov
Ну ты и обозвал перекладывание жсонов конечно)
Вообще ни разу не перекладывание жсонов.
источник

AK

Andrei K in pro.cxx
Побитый Кирпич
Может быть в крипте и рассматриваются, но в сериализации и маршалинге это как раз просто хранение чего то в виде сырых байт
Сериализация бывает разная. Иногда байты надо паковать, тогда их значения-таки нужны.
источник

AF

Aidar Fattakhov in pro.cxx
Криптография оперирует числами
источник

AF

Aidar Fattakhov in pro.cxx
Не байтами
источник

ПК

Побитый Кирпич... in pro.cxx
Andrei K
Сериализация бывает разная. Иногда байты надо паковать, тогда их значения-таки нужны.
Там видимо нужны значения не байта как число, а отдельных бит
источник

ПК

Побитый Кирпич... in pro.cxx
То есть поток нулей и единиц
источник

AK

Andrei K in pro.cxx
Да, но я сомневаюсь, что компилятор сумеет соптимизировать упаковку varint для uint256 если написать код чисто манипулирующий битами, по сравнению с тем, как это будет соптимизировано руками с числами и операциями сравнения.
источник

AK

Andrei K in pro.cxx
Я понимаю, что можно, я понимаю, что другая семантика. Я _не_ понимаю, для каких она ситуаций.
источник

AK

Andrei K in pro.cxx
Потому что кажется, что если ты не возишься зачем-то с битами, то на границе маршаллинга ты всё равно вызываешь по итогу код, который берёт void*
источник

AF

Aidar Fattakhov in pro.cxx
Давай так:
Ты понимаешь почему возможность делать char c;
c-'0' это плохо?
источник

AF

Aidar Fattakhov in pro.cxx
Семантика абсолютно та же и для тех же случаев
источник

AK

Andrei K in pro.cxx
Блин. Айдар.
источник

AF

Aidar Fattakhov in pro.cxx
Aidar Fattakhov
Семантика абсолютно та же и для тех же случаев
То есть сугубо хранение и перемешивание
источник

ПК

Побитый Кирпич... in pro.cxx
Andrei K
Я понимаю, что можно, я понимаю, что другая семантика. Я _не_ понимаю, для каких она ситуаций.
Функция send_bytes_to_server принимает что то типа span<byte>
источник

AK

Andrei K in pro.cxx
Aidar Fattakhov
Давай так:
Ты понимаешь почему возможность делать char c;
c-'0' это плохо?
Меня не надо этому учить, я это прекрасно понимаю. Я говорю о том, что с текущим стл, где нельзя даже файл открыть как стрим std::byte всё это становится резко не очень практично.
источник

AF

Aidar Fattakhov in pro.cxx
iostreams неюзабельны в любом виде
источник

AF

Aidar Fattakhov in pro.cxx
и с байтом и без
источник

AF

Aidar Fattakhov in pro.cxx
это какойто дремучий легаси
источник