|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|||||||||||
C строки vs string05.02.2020, 17:38. Показов 7913. Ответов 78
Метки нет (Все метки)
почему первая программа выполнится медленнее в 2 раза чем вторая?
0
|
|||||||||||
| 05.02.2020, 17:38 | |
|
Ответы с готовыми решениями:
78
Разделение строки на 2 подстроки с последующей записью последних в HashMap<String, String> Несколько вопросов по примеру из книги по C# про строки (string и String.Format) |
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|
| 05.02.2020, 22:23 | |
|
0
|
|
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
||
| 05.02.2020, 22:24 | ||
|
У меня по замерам примерно работает в одинаковое время, без учитывания SSO (чаще выигрывает версия с Си строками и memcpy).
0
|
||
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|||||||||||||
| 05.02.2020, 22:52 | |||||||||||||
|
Да, действительно некоторые реализации string в старом С++ использовали COW. Поэтому копирование
Вот демонстрация работы в "старом" режиме: https://rextester.com/KVKNG24392 Добавлено через 10 минут Вот демо: https://gcc.godbolt.org/z/Ey_pmg Обратите внимание, что в результирующем коде вообще нет вызова strlen, компилятор посчитал длину на этапе компиляции.
Добавлено через 4 минуты Вот демонстрация современной реализации с работой SSO (сократил размер строки, чтобы влезло в буфер): https://rextester.com/RWIQ92807
1
|
|||||||||||||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 05.02.2020, 22:54 [ТС] | |
|
DrOffset, почему SSO звучит так будто это какой-то супер механизм? Это же на деле просто массив в стеке, ничего необычного, насчёт 5го издания учту, только зря 100 страниц прочитал) ну ничего, заново перечитаю, но по сравнению со Страуструп ом Липпман во много раз интереснее пишет, хоть и не совсем для новичков тк с ходу о шаблонах указателя и тд
0
|
|
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
||
| 05.02.2020, 22:57 | ||
|
Просто пятое издание описывает современный С++, поэтому неудивительно, что этого примера там уже нет.
1
|
||
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
|
| 05.02.2020, 22:57 | |
|
1
|
|
|
"C with Classes"
|
|
| 05.02.2020, 23:05 | |
|
0
|
|
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|
| 05.02.2020, 23:09 | |
|
2
|
|
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 05.02.2020, 23:14 [ТС] | |
|
_stanislav, а что такого?
0
|
|
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
|
| 05.02.2020, 23:20 | |
|
DrOffset, а мне вот если память не изменяет, то строки из библиотеки folly, реализованы именно через COW и работают даже в многопотоке, и совместимы с std строками. Получается они все эти проблемы решили?
folly/FBString.h
0
|
|
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
||
| 05.02.2020, 23:38 | ||
|
1
|
||
|
248 / 70 / 9
Регистрация: 22.07.2018
Сообщений: 321
|
||
| 06.02.2020, 00:00 | ||
b не ссылается на объект, чей lifetime начался и не закончился. Даже после obj.b = 8.0f;.
0
|
||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 06.02.2020, 00:03 [ТС] | |
|
argcargv, а как тогда его сделать активным?
0
|
|
|
248 / 70 / 9
Регистрация: 22.07.2018
Сообщений: 321
|
|
| 06.02.2020, 00:05 | |
|
ReYalp, пока [basic.life]/8 не починят --- никак.
0
|
|
|
|
|
| 06.02.2020, 00:08 | |
|
2
|
|
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
|
| 06.02.2020, 00:54 | |
|
0
|
|
|
"C with Classes"
|
|
| 06.02.2020, 05:39 | |
|
0
|
|
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
|
| 06.02.2020, 09:43 | |
|
_stanislav, да, ссылка на пункт из стандарта, там о переиспользовании памяти идется.
1
|
|
|
"C with Classes"
|
|
| 06.02.2020, 09:56 | |
|
0
|
|
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 06.02.2020, 10:16 [ТС] | |
|
_stanislav, http://eel.is/c++draft/class.union#2 и тут сразу же basic.life в самом начале
1
|
|
| 06.02.2020, 10:16 | |
|
Написать функция String->String, удаляющие из строки все согласные буквы Напишите функцию String->String, удаляющую из строки все гласные буквы используя функции filter и elem Разработать функцию MakeStr(const S:string):string, возвращающую строку, состоящую из всех гласных латинских букв строки
Создайте класс Animal. Добавьте поля string Name, string Kind, string Areal, int Population Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров
В текущей версии модели успешно реализован ключевой механизм. . .
|
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям
Реализованные компоненты:
Механизм закисления почвы через протонную помпу
Конкуренция между типами микориз
pH как триггер сукцессии
C/ P соотношение. . .
|
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
|
Решил проблему с ошибкой пагинации сообщений с сервера на алгоритме обхода дерева "Эстафета хвоста".
Hrethgir 12.07.2026
Проблема была в том, что удалялась именно новая кнопка, а не старая. Ни один ИИ не обнаружил это, а сам я смог только когда с работой стало попроще и когда заставил работать будущее автономное. . .
|
|
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы
## О чём эта статья
В процессе построения ОДУ-модели (система дифференциальных. . .
|
сукцессия 24. Промежуточное общее описание модели
anaschu 12.07.2026
Хендофф: модель АМ→ЭКМ сукцессии микоризы (ризосфера, 50 лет)
Содержание проекта
Симуляция вековой (50 лет) экологической сукцессии в почве леса
Основные участники: АМ-гриб, ЭКМ-гриб,. . .
|
сукцессия 23. Более физиологичная физиология, более экологичная экология, более диффурные диффуры.
anaschu 12.07.2026
Что реально нашли и починили за эти 5 часов
Правило Линдемана (КПД конверсии сахара в тело, kEff) — раньше 100% полученного углерода шло прямо в биомассу гриба; теперь только kEff=0. 5 (после. . .
|
сукцессия 22. От артефактов к физиологии: калибровка агентной модели грибной сукцессии для воспроизведения сезонной динамики и pH-плато
anaschu 11.07.2026
Аннотация
В данной работе представлена калибровка агентной модели динамики грибных сообществ (fungal-succession), направленная на устранение нефизичных артефактов (коллапс биомассы, мгновенное. . .
|