
Алексей
11.06.2018
10:42:21
Хотя, у меня вполне определенно устанавливаются флаги

yuri
11.06.2018
10:43:05
забудьте char* как страшный сон. 2018 год на дворе.

Алексей
11.06.2018
10:43:25

Anton
11.06.2018
10:43:32

Google

Алексей
11.06.2018
10:43:36
А что вместо него?

Anton
11.06.2018
10:43:52

yuri
11.06.2018
10:43:53
std::string str; str.resize(...);

Vhäldemar
11.06.2018
10:44:11
а чо не вектор тогда?

yuri
11.06.2018
10:44:21
стринг проще

Vhäldemar
11.06.2018
10:44:23
если у человека бинарное

Алексей
11.06.2018
10:44:28

yuri
11.06.2018
10:44:35
пойдет-пойдет

Алексей
11.06.2018
10:44:46

Anton
11.06.2018
10:45:07

Vhäldemar
11.06.2018
10:45:08
я не очень понимаю, ну взял человек стд с тринг
как он туда будет пихать 24 бита

Google

yuri
11.06.2018
10:45:45

Vhäldemar
11.06.2018
10:45:50
и будет ли такое проще, чем чар*

Anton
11.06.2018
10:46:13

Алексей
11.06.2018
10:46:22
Кстати, я думал на счет std::vector<char>, но вот тоже не понял, как туда упаковывать по несколько байт фрагменты

Vhäldemar
11.06.2018
10:46:36
ему в сокет надо записать 24 бита
(насколько я понял)

Алексей
11.06.2018
10:46:48
составленные из кусков разной длины

Anton
11.06.2018
10:47:05

Vhäldemar
11.06.2018
10:47:15
проблема

Алексей
11.06.2018
10:47:22
может просто взять bitset<72> и попробовать переключать со смещением?
»

Vhäldemar
11.06.2018
10:47:43
[In reply to Уладысь]
а как потом установить целое скажем в 3 первых байта, а потом еще дальше?

Anton
11.06.2018
10:48:30

Vhäldemar
11.06.2018
10:48:44
внезапно

Anton
11.06.2018
10:48:48
Ну, это же на коленке делается.

Алексей
11.06.2018
10:49:00

Vhäldemar
11.06.2018
10:49:22
на коленке, кросс-платформенно, без особого понимания - я сомневаюсь

Алексей
11.06.2018
10:50:25
Мне главное разобраться бы, получить понимание как это работает

Google

Алексей
11.06.2018
10:50:36
Кстати на счет байтового потока, это void* ?

Mikhail Voronov
11.06.2018
10:51:54
как вариант

yuri
11.06.2018
10:52:05
void* еще хуже, чем char*. Мрак при отладке.

Anton
11.06.2018
10:52:27

Vhäldemar
11.06.2018
10:53:20
https://pastebin.com/UZyCF53K

Алексей
11.06.2018
10:53:26
Упаковка разных типов в поток?

Anton
11.06.2018
10:55:32

Vhäldemar
11.06.2018
10:55:49
интефейс

Anton
11.06.2018
10:55:56

Vhäldemar
11.06.2018
10:56:03
сериализатора
вот чтоб с указателями и маллоком

Алексей
11.06.2018
10:56:32
Мне бы как то вот сейчас сделать, чтобы работало. А потом эти классы по борьбе с HTTP/2 доработаю полноценно.
Когда работу сдам)
Сейчас хоть char* хоть void*, лишь бы фреймы отправить нормально)

Ruslan
11.06.2018
10:57:45
Почитай стандарты хоть на UDP
Примерно поймешь подход

Mikhail Voronov
11.06.2018
10:58:45

Google

Ruslan
11.06.2018
10:59:01
Главное оперировать байтами

Anton
11.06.2018
10:59:04
https://pastebin.com/1UbVrGrU
Ну, тип того.
Я это делал (как-то) по уму.
https://bitbucket.org/FlameTeam/libs/src/dev/src/Templates/Serialization.hpp

Ruslan
11.06.2018
10:59:08
А не сущностями

Mikhail Voronov
11.06.2018
10:59:39

Anton
11.06.2018
11:01:09

Mikhail Voronov
11.06.2018
11:01:14
а вот так на коленке можно написать макрос для msvc/gcc для выравнивания: https://pastebin.com/kvEiWSWK

Alexander
11.06.2018
11:02:33
вроде как я раньше предалагал такую штуку. а то приходится веселиться каждый раз

Mikhail Voronov
11.06.2018
11:03:20
а для offset_of нет пропозала?

Алексей
11.06.2018
11:03:46
Спасибо, сейчас погляжу

Anton
11.06.2018
11:07:59

Alexander
11.06.2018
11:12:58
а она будет в лучшем слуаче через 5 лет
так что сорри, придётся страдать
зато вон там неожиданно лично для меня контракты продвинулись дальше

Dmitry
11.06.2018
11:44:41
template <typename T>
constexpr inline const T &qMin(const T &a, const T &b) { return (a < b) ? a : b; }
#ifndef min
#define min(a,b) (((a) < (b)) ? (a) : (b))
#endif
Подскажите, пожалуйста, в чем отличие?

Alexander
11.06.2018
11:47:56

Побитый
11.06.2018
11:48:24
А именно - первое гавно, второе - нет?

Alexander
11.06.2018
11:48:43

Anton
11.06.2018
11:48:46
так что сорри, придётся страдать
А чего страдать, если заранее всё уже навелосипежено. :)
Если что-то серьёзное мутить, то да, рефлексия была бы лучшим вариантом.

Google

Vhäldemar
11.06.2018
11:49:06

Alexander
11.06.2018
11:49:20

Александр
11.06.2018
11:49:22

Group Butler [beta]
11.06.2018
11:49:23

Alexander
11.06.2018
11:49:35

Александр
11.06.2018
11:50:03
да я знаю. это так было, возмущение

Anton
11.06.2018
11:52:22

Chiveson
11.06.2018
13:16:42
к вашему разговору выше vector<uint8_t> to tuple<int,int> кастить или memcpy?

Anton
11.06.2018
13:18:31

Chiveson
11.06.2018
13:20:00

Mikhail Voronov
11.06.2018
13:20:48
а зачем tuple?

Chiveson
11.06.2018
13:21:01
ну в struct foo

Anton
11.06.2018
13:21:21

Vhäldemar
11.06.2018
13:22:03
https://stackoverflow.com/questions/28410697/c-convert-vector-to-tuple
гугл запретили?

Chiveson
11.06.2018
13:25:52

Alexander
11.06.2018
13:48:15
И на всякий случай - чат для новичков @supapro