Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
01.07.2017, 18:46
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Не могу понять почему так гиморойно присвоить одно значение переменной типа "текст" и прибавить к нему еще текст и еще текстовую переменную. Во всех языках это обычно. А на С++ меня аж бесит. s=ВводИнформацииТипаТекст(ТОЛЬКО НЕ КОНСОЛЬ!!! достали кусок текста из файла, веб страницы - неважно) s=s + " еще текст" + " еще текст результат от парсинга" + функцияСВозращениемТекста + число Это как по проще на С++ делается чтоб не материться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.07.2017, 20:35
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Андрей159, sprintf ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.07.2017, 20:41
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
А если по модному, молодежному то std::stringstream (или более старый поток std::strstream << "XX" << std::ends;) https://habrahabr.ru/post/131977/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.07.2017, 20:58
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
А почему во всех недоязыках можно просто склеить через + или другой символ, а в брутальном С++ нельзя? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.07.2017, 21:02
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Sergey_rbА почему во всех недоязыках можно просто склеить через + или другой символ, а в брутальном С++ нельзя? Потому что это тормоз. Брутальных тормозов не бывает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.07.2017, 21:21
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Dima TSergey_rbА почему во всех недоязыках можно просто склеить через + или другой символ, а в брутальном С++ нельзя? Потому что это тормоз. Брутальных тормозов не бывает. или это принципиально невозможно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.07.2017, 21:28
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Sergey_rbDima Tпропущено... Потому что это тормоз. Брутальных тормозов не бывает. или это принципиально невозможно? Как раз в С++ это принципиально возможно, потому что есть operator overloading, в отличие от многих других. Но,... не нужно. Уже заложен смысл Есть только сложение строк http://www.cplusplus.com/reference/string/string/operator / Хочешь - допиши сам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.07.2017, 21:29
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Лично мне в операции сложении не хватает возможностей форматирования, которые есть sprintf ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.07.2017, 21:35
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Код: plaintext 1. мне неудобно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.07.2017, 21:36
|
|||
|---|---|---|---|
|
|||
конкатенация строки в одну переменную |
|||
|
#18+
Андрей159s=ВводИнформацииТипаТекст(ТОЛЬКО НЕ КОНСОЛЬ!!! достали кусок текста из файла, веб страницы - неважно) s=s + " еще текст" + " еще текст результат от парсинга" + функцияСВозращениемТекста + число Это как по проще на С++ делается чтоб не материться? А в чем проблема-то? Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.07.2017, 21:37
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Sergey_rbDima Tпропущено... Потому что это тормоз. Брутальных тормозов не бывает. или это принципиально невозможно? Ты пойми что A+B+C это сначала выделить память под A+B, затем выделить под (A+B) + С, т.е. это тормоз, поэтому sprintf, где сразу выделится память под итого. С++ под тормоза не заточен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.07.2017, 21:40
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Dima TSergey_rbпропущено... или это принципиально невозможно? Ты пойми что A+B+C это сначала выделить память под A+B, затем выделить под (A+B) + С, т.е. это тормоз, поэтому sprintf, где сразу выделится память под итого. С++ под тормоза не заточен. А разве string не так работает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.07.2017, 23:57
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Sergey_rbDima Tпропущено... Ты пойми что A+B+C это сначала выделить память под A+B, затем выделить под (A+B) + С, т.е. это тормоз, поэтому sprintf, где сразу выделится память под итого. С++ под тормоза не заточен. А разве string не так работает? нет. это две последовательные несвязанные операции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.07.2017, 00:09
|
|||
|---|---|---|---|
|
|||
конкатенация строки в одну переменную |
|||
|
#18+
Dima Tпоэтому sprintf, где сразу выделится память под итого Не выделится сразу. Это тоже будут двухступенчатые тормоза, помноженные на парсинг строки формата. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.07.2017, 00:38
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Dimitry SibiryakovDima Tпоэтому sprintf, где сразу выделится память под итого Не выделится сразу. Это тоже будут двухступенчатые тормоза, помноженные на парсинг строки формата. Ты выделишь память один раз перед вызовом sprintf'a. А при плюсовании - столько раз, сколько аргументов. Тормоза простого парсинга невелики, и уж гораздо быстрее сис.вызова выделения памяти ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.07.2017, 00:38
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
+= или append сделать религия не позволяет? у брутальных кроме + есть ещё StringBuffer/StringBuilder ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.07.2017, 00:39
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Siemarglи уж гораздо быстрее сис.вызова выделения памяти это вряд ли системный вызов - просто выделение памяти из локальной кучи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.07.2017, 00:52
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
ИзопропилSiemarglи уж гораздо быстрее сис.вызова выделения памяти это вряд ли системный вызов - просто выделение памяти из локальной кучиПредлагаю посмотреть исходники RTL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.07.2017, 01:29
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
кому она теперь надо эта скорость и эта память... разве что если на Arduino свой сервер писать.. И так система все убивает и память и хард и скорость. В 2005 году я думал после 7рки Виндовс выйдет какой-то 3D виндовс. Вышло какое-то гавно, после него еще лучше и потом не знаю что это было такое, куда пропали тени от элементов. 10лет прошло. Память под систему увеличилась в двое, а если подумать виндовс это набор элементов и готового функционала для программистов. В итоге что за 10 лет изменилось в лучшую сторну. Разве что начали следить и замахивать обновлением особенно когда нужно срочно выключить и кудато идти. А борьба с вирусами только на словах. Автозапуск отключил и 8 лет без антивирусника и без проблем, а они что-то там борятся. Только фоновые приложения увеличились от 18 к 60. О расходе памяти можно точно не беспокоится. Спасибо за std::string s ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.07.2017, 01:32
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Андрей159кому она теперь надо эта скорость и эта память.. представь себе - нужна не только в танчики люди играют ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.07.2017, 01:35
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
P.S. а что говорить а Питоне, в котором чтоб написать цыкл от 1 к 100 нужно использовать массив от 1 к 100. Это ж как интересно на машинном коде все будет работать?))))) На этом уроке я и закончил свое обучение начал гуглить все о скорости Питона и сравнении. Сам потестил также. Ой и медляра... Логика не подвела. Но рейтинг языка зашкаливает. Так и не понял в чем прикол популярности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.07.2017, 01:36
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Андрей159, не путай массив с генератором ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.07.2017, 04:21
|
|||
|---|---|---|---|
конкатенация строки в одну переменную |
|||
|
#18+
Dimitry SibiryakovDima Tпоэтому sprintf, где сразу выделится память под итого Не выделится сразу. Это тоже будут двухступенчатые тормоза, помноженные на парсинг строки формата. А сколько это в минутах? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.07.2017, 11:54
|
|||
|---|---|---|---|
|
|||
конкатенация строки в одну переменную |
|||
|
#18+
SiemarglЛично мне в операции сложении не хватает возможностей форматирования, которые есть sprintf Siemargl Код: plaintext 1. мне неудобно http://www.boost.org/doc/libs/1_64_0/libs/format/doc/format.html#examples ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&mobile=1&tid=2018135]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
167ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 8ms |
| total: | 262ms |

| 0 / 0 |
