Size: a a a

2020 October 31

I

Igor in codingteam
классический пример: мы пригласили фронтендеров, сишников, и хаскелистов.

В английском, если перед "и" нет запятой, то "сишники и хаскелисты" становится уточнением. В русском есть похожие засады
источник

O

Omap in codingteam
Alex Ф-ф-фэils!🌠︙
Хотя, кажется, знаю, \0
почему там "\0" небыло?
источник

c

codingteam@cjr in codingteam
Minoru
потому что это view
источник

c

codingteam@cjr in codingteam
Minoru
view представляет собой «окошко» в кусочек *уже существующей* строки
источник

c

codingteam@cjr in codingteam
Minoru
фактически это структура из двух полей: указатель на первый символ view и длина view
источник

c

codingteam@cjr in codingteam
Minoru
понятно, что посреди строки у тебя может не быть \0, поэтому std::string_view не терминирован
источник

O

Omap in codingteam
бесполезный тип какой-то
источник

c

codingteam@cjr in codingteam
Minoru
почему же. Очень полезный. Позволяет тебе сослаться на кусочек строки, не копируя её
источник

t

ttldtor in codingteam
codingteam@cjr
Minoru
почему же. Очень полезный. Позволяет тебе сослаться на кусочек строки, не копируя её
я всё ещё не научился пользоваться им(
источник

c

codingteam@cjr in codingteam
Minoru
я тоже. Но концепция-то ясна
источник

t

ttldtor in codingteam
Хз, мне не ясно, где нельзя его использовать
источник

t

ttldtor in codingteam
Жду книгу от т-ща Nicolai M. Josuttis
источник

A

Alex Ф-ф-фэils!🌠︙... in codingteam
ttldtor
Хз, мне не ясно, где нельзя его использовать
Где ждут си строку, там не надо
источник

t

ttldtor in codingteam
Alex Ф-ф-фэils!🌠︙
Где ждут си строку, там не надо
А оно туда-сюда два раза не конвертнётся? string_view->string->char* ?
источник

c

codingteam@cjr in codingteam
Minoru
вот так как ты написал — конвертится: view.to_string().c_str()
источник

t

ttldtor in codingteam
крч, нельзя просто так это делать, я понял
источник

c

codingteam@cjr in codingteam
Minoru
но тогда надо передавать в сишку ещё и view.size(), ибо в конце строки может не быть NUL
источник

t

ttldtor in codingteam
но ведь конструктор вьюхи детектит конец строки \0
источник

c

codingteam@cjr in codingteam
Minoru
у вьюхи есть конструкторы, которые этого не делают
источник

c

codingteam@cjr in codingteam
Minoru
ну и я же выше объяснил: нет гарантии, что вьюха заканчивается \0
источник