|
0 / 0 / 0
Регистрация: 04.12.2016
Сообщений: 43
|
|
Опытным программистам С++25.01.2018, 16:56. Показов 10888. Ответов 254
Метки нет (Все метки)
Здравствуйте, я начал изучать С++. Есть определенный план обучения. Например: сначала изучить синтаксис, принцип ООП, контейнеры STL, стандарты С++11/C++14. Вопрос звучит так: что можно еще добавить в список для изучения? Я еще не определился в какой сфере хочу использовать язык, что нужно знать вообще не привязанная к определенной области?
0
|
|
| 25.01.2018, 16:56 | |
|
Ответы с готовыми решениями:
254
вопрос к опытным программистам Вопрос к опытным програмистам Посмотрите опытным взглядом |
|
322 / 174 / 78
Регистрация: 09.10.2014
Сообщений: 809
|
|
| 28.01.2018, 22:59 | |
|
0
|
|
|
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||
| 28.01.2018, 23:05 | |||
|
Добавлено через 4 минуты
0
|
|||
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
||||||||
| 28.01.2018, 23:15 | ||||||||
0
|
||||||||
|
322 / 174 / 78
Регистрация: 09.10.2014
Сообщений: 809
|
|||
| 28.01.2018, 23:30 | |||
|
AllocatorAwareContainer - контейнером, который содержит экземпляр Allocator и использует этот экземпляр во всех своих функциях-членах для выделения и освобождения памяти, а также для создания и уничтожения объектов в этой памяти (такими объектами могут быть элементы контейнера, узлы). Тобишь он будет хранить не T, а _List_node<T>. Добавлено через 2 минуты
0
|
|||
|
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||
| 28.01.2018, 23:32 | ||
|
0
|
||
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
||||||||
| 28.01.2018, 23:36 | ||||||||
0
|
||||||||
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|
| 28.01.2018, 23:42 | |
|
Renji,
Пишу с мобилы не удобно цитировать... Список по определению является динамической структурой данных, что вам даст знание размера ноды на этапе компиляции, и как вы без маллока выделите память для динамической структуры данных, причём на этапе компиляции, зная просто размер этой самой ноды? ![]() Насчёт чара в стринге, можно же передавать явно тот тип который нужно, если "зависит от реализации" не подходит под ваши требования? Насчёт итераторов - у строк они тоже имеются а оператор [] есть не у всех просто потому что его наличие зависит от данных. Скажем в том же листе он ни к чему. А в векторе например очень даже кстати...Всему своё место ![]() Насчёт регулярок тут уже надо обращаться к разрабам, что бы добавили то чего нет... В крайнем случае можно пока можно дергать для этих дел какой нибудь скриптовый язык (если сильно надо), системные вызовы ведь никто не отменял... Да, не удобно, но и не безвыходно...
0
|
|
|
322 / 174 / 78
Регистрация: 09.10.2014
Сообщений: 809
|
||
| 28.01.2018, 23:51 | ||
|
0
|
||
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|||
| 29.01.2018, 00:04 | |||
|
В этом собственно и проблема STL-аллокаторов - они писались как обертка вокруг глобального malloc. На "каждый объект сидит в своей песочнице размером в сто элементов" они не рассчитывались. Да, в стринге теоретически можно задать тип используемого символа. Но всякие там std::to_string с подобными кастомными строками работать не умеют. И я может быть что-то пропустил, но std::basic_string::find работать с итераторами вроде бы пока не научили.
0
|
|||
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|
| 29.01.2018, 00:26 | |
|
Renji,
Вот вам ещё один вариант для аллокации, и даже с определением размера ноды на этапе компиляции: Аллокаторы имеют шаблонный параметр T, который по идее должен быть выведен как тип ноды (если подсунуть листу свой аллокатор). Что мешает в конструкторе аллокатора выделить память, размер которой будет равен sizeof(T) * fixed_elements_count, и при аллокации использовать выделенный буфер? Вроде то что вы хотели... Добавлено через 1 минуту Я конечно не проверял но вроде должно сработать
0
|
|
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|||||||
| 29.01.2018, 00:41 | |||||||
Впрочем, в C++17 rebind стал deprecated. Может, в C++20 эту гадость удалят окончательно.
0
|
|||||||
|
322 / 174 / 78
Регистрация: 09.10.2014
Сообщений: 809
|
||||
| 29.01.2018, 00:51 | ||||
|
0
|
||||
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
||||
| 29.01.2018, 00:57 | ||||
|
Того аллокатора который получился от rebind? Это временный объект, который через три наносекунды помрет вместе с пулом в нем. Но возвращаемся к исходному - для нужного функционала придется пилить свой контейнер.
0
|
||||
|
322 / 174 / 78
Регистрация: 09.10.2014
Сообщений: 809
|
||||
| 29.01.2018, 01:30 | ||||
|
Добавлено через 1 минуту Добавлено через 6 минут А вообще работать с локалью и кодировками в stl тот еще гемор, всякие там codecvt и тд
0
|
||||
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
||||
| 29.01.2018, 01:48 | ||||
|
0
|
||||
|
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||
| 29.01.2018, 01:50 | ||
|
А вот те средства которые нужно добавлять в ядро языка ии которые не могут быть созданы программистом в рамках решения его конкретной задачи в результате всего этого остаются за кадром.
0
|
||
|
322 / 174 / 78
Регистрация: 09.10.2014
Сообщений: 809
|
|||
| 29.01.2018, 02:03 | |||
|
0
|
|||
|
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||
| 29.01.2018, 02:05 | ||
|
0
|
||
|
322 / 174 / 78
Регистрация: 09.10.2014
Сообщений: 809
|
|
| 29.01.2018, 02:20 | |
|
Вот единственное, что аллокатор влияет на тип контейнера...
0
|
|
|
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||
| 29.01.2018, 02:22 | ||
|
0
|
||
| 29.01.2018, 02:22 | |
|
Вопрос к опытным раскрутчикам. вопрос к опытным програмистам Вопрос к опытным гуру Взываю к опытным php-шникам Нужен совет опытным верстальщиков ? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запрет пометки на удаление и отмены проведения
Maks 16.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "ПутевойЛист" разработанного в КА2.
Задача: запретить помечать на удаление и отменять проведения путевого листа при условии, если он сдан. . .
|
Как надо было делать правильно - вообще не слушать ИИ, его дело - текст.
Hrethgir 15.07.2026
А вообще надо было делать не так, чтобы не исправлять ошибку https:/ / www. cyberforum. ru/ blogs/ 223907/ 10996. html , правильно было : удалил кнопку, а потом добавил её.
Всё это стресс конечно. Почему?. . .
|
Знаете, от чего появляется стресс?
kumehtar 15.07.2026
Стресс появляется оттого, что вы, зная как поступить правильно, делаете наоборот.
Ларри Уингет
|
Нас бьют, а мы крепчаем? Какая чушь!
kumehtar 15.07.2026
Вот это вот бытующее мнение, что человек меняется только под действием проблем, всегда считал вредоносным. Поверь, от проблем у людей появляются не изменения, а нервное расстройство и ПТСР. А. . .
|
|
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров
В текущей версии модели успешно реализован ключевой механизм. . .
|
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям
Реализованные компоненты:
Механизм закисления почвы через протонную помпу
Конкуренция между типами микориз
pH как триггер сукцессии
C/ P соотношение. . .
|
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
|
Решил проблему с ошибкой пагинации сообщений с сервера на алгоритме обхода дерева "Эстафета хвоста".
Hrethgir 12.07.2026
Проблема была в том, что удалялась именно новая кнопка, а не старая. Ни один ИИ не обнаружил это, а сам я смог только когда с работой стало попроще и когда заставил работать будущее автономное. . .
|