Показать сообщение отдельно

  #2  
Старый 09.07.2022, 01:39
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

Цитата:
Сообщение от kin4stat  

лайфхак: добавляем эти строки в BitStream.h куда-нибудь вниз, и кайфуем

C++:





Код:
template

inline
void
BitStream
::
Write
(
std
::
string var
)
{
Write
(
var
.
size
(
)
)
;
Write
(
var
.
c_str
(
)
,
var
.
size
(
)
)
;
}
#if __cpp_lib_string_view >= 201606
template

inline
void
BitStream
::
Write
(
std
::
string_view var
)
{
Write
(
var
.
size
(
)
)
;
Write
(
var
.
data
(
)
,
var
.
size
(
)
)
;
}
#endif


Ну и пример:

C++:





Код:
std
::
string aye_string
=
"АУЕ"
;
bs
.
Write
(
aye_string
)
;

Хороший вариант, но size вроде 4 байта занимает, а для некоторых РПЦ такое не подойдет. У RPC_ScrShowDialog параметры строк идут в одном байте. Хотя можно еще добавить в каком типе длины записывать строку.
 
Ответить с цитированием