Мужик, ты крут, надеюсь доведешь свою задумку до конца (серия роликов) несмотря на мизерные количества просмотров, удачи и терпения.
@vividbw6 ай бұрын
Занятия до конца семестра. Планирую выкладывать регулярно. Ставьте лайк, подписывайтесь на канал, делитесь с друзьями и коллегами
@proutak2 ай бұрын
13:57 - Правильно же " А потом к строчке helloWorld1", а не "строчке helloworld" ?
@vividbw2 ай бұрын
Да, вы правы, спасибо за внимательность. Я оговорился
@igorseledtsov73457 ай бұрын
не надо это использовать.. использовать надо библиотеку Си ну если конечно важно быстродействие, а не скорость написания
@vividbw7 ай бұрын
На чем основывается ваше утверждение? Работа со строками в C++ эффективнее и безопаснее, чем в C: Строки в C++ знают свою длину, тогда как в C вынуждены искать конец строки за O(N). Строки в C++ знают вместимость буфера, что позволяет избавиться от аллокаций памяти, когда размер буфера достаточен для хранения результата. Это не говоря о том, что строки в C++ автоматически освобождают память при выходе из области видимости строковой переменной, а не возлагают эту обязанность на программиста.
@igorseledtsov73457 ай бұрын
@@vividbw Всё что вы написали это и называется, не эффективно. ну кроме пожалуй определения длины но это как раз и легко обходится уже программистом.. Про безопасность согласеню Но это лишь вопрос квалификации пишущего.. Про аллокацию памяти вы видно сами не поняли.. Если каждую строку пихать в отдельный аллоцированый буфер, то будет ад адцкийю Си как раз и позволяет работать и размещать строки как надоюю а не полагаться на библиотеку
@vividbw7 ай бұрын
@igorseledtsov7345 приведите пример кода на C, работающий со строками с помощью функций из string.h, который, по вашему мнению, не получится эффективнее или так же эффективно реализовать на c++, используя string, string_view и алгоритмы, затратив меньше строк кода. Про аллокации на каждую строку - можно передать кастомный аллокатор в строку, который будет выделять память в заранее заготовленном буфере
@igorseledtsov73457 ай бұрын
@@vividbw что значит привведите пример? па просто поиск подстроки в строкеюю работает на с быстрее на 40 процентов быстерее (на малых длинах, на больших уже примерно одинаково) strstr() Про аллокатор вы правы, это предотвратит арагментацию памяти Но! если его использовать, то эти аргументы про большую безопасность С++ стрингов летят в трубу.. Ибо опять появляется контроль программиста А вот на си как раз то что естьв си++ реализуется легко через struct string { size_t l; uint8_t str[0]; }; и небольшого быстро пишущегося набора процедур для работы с таким объектом. Вопрос А зачем это только? }