|
0 / 0 / 0
Регистрация: 15.02.2025
Сообщений: 10
|
||||||
Является ли vector примером динамического массива?17.02.2025, 19:33. Показов 8114. Ответов 72
Метки нет (Все метки)
Является ли vector примером динамического массива? Вопрос может звучать странно и я вижу в нем однозначный ответ, что вектор все таки является примером динамического массива, но все равно, хотелось бы убедиться, потому что мнения в интернете расходятся
(Готовлюсь к зачету в унике, вопросы по теории это бред, из-за формулировки некоторых нельзя дать однозначный ответ, поэтому не бейте палками)В каких строках приведен пример динамического массива?
0
|
||||||
| 17.02.2025, 19:33 | |
|
Ответы с готовыми решениями:
72
Является ли такое решение задачи примером динамического программирования? Что является причиной ошибки после завершения всех операций? (динамический массив) Собственный динамический массив (аналог std::vector) |
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
|||||||
| 17.02.2025, 21:38 | |||||||
0
|
|||||||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|
| 17.02.2025, 21:41 | |
|
Royal_X, я для кого пример показывал?
Значит он не массив. Сколько его не обзывай им
0
|
|
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
||
| 17.02.2025, 21:53 | ||
|
и кстати, как там в памяти, это тоже второстепенно ведь, чтобы быть массивом по семантике достаточно предоставлять возможность хранить данные, записывать и читать отдельные элементы, даже не важно, как он там внутренне реализован. Тот же string можно называть массивом символов по семантике, хотя в ранних версиях стандарта нет даже гарантии, что хранятся contiguously. Однако, мы же говорим о семантике, не вдаваясь в детали реализации. То, что vector не является массивом, я согласен. Но тут речь о семантике. И выше я показал, что даже на сайте cppreference вектор называют "динамическим массивом". Массив по семантике это абстрактная штука, которая ничем не регламентирована. У каждого программиста свои требования. Допустим, засунет некто 8 битов в одну лишь char (при CHAR_BIT 8). И этот чел может смело называть char массивом битов по семантике... в конкретном случае. Но в вопросе ТС вряд ли спрашивается по семантике, поэтому правильные ответы, скорее всего, 1 и 4.
0
|
||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||
| 17.02.2025, 22:36 | ||
|
Есть четкое определение что такое массив в С++ :
https://eel.is/c++draft/dcl.array#3
1
|
||
|
фрилансер
6496 / 5727 / 1133
Регистрация: 11.10.2019
Сообщений: 15,289
|
|
| 18.02.2025, 08:38 | |
|
nkrdd, вектор - это не массив, но это объект, который тоже хранит элементы, расположенные в памяти непрерывно друг за другом. Для доступа к ним есть интерфейс.
То есть, через вектор можно имитировать поведение массива, если так проще воспринимать. А будет вектор использовать динамическую память, стек или ещё что другое - зависит от аллокатора.
0
|
|
|
|
||||||||
| 18.02.2025, 11:38 | ||||||||
0
|
||||||||
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
|||
| 18.02.2025, 12:12 | |||
|
Ибо интерфейс изменения размера не обязательно должен выражаться через квадратные скобки. resize() ничем не уступает им (квадратным скобкам) в динамичности
0
|
|||
|
|
|
| 18.02.2025, 12:42 | |
|
0
|
|
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
|||||||
| 18.02.2025, 12:51 | |||||||
|
А прикинь пользователь будет вводить
0
|
|||||||
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
||||||||
| 18.02.2025, 12:55 | ||||||||
|
Динамический массив - в отличии от статического - это массив изменяемого размера. Как устроено API изменения размера - не является решающим отличием от статического массива. Добавлено через 3 минуты Хотя, конечно, если их "приравнять" (мап и вектор), то не понятно какое должно быть поведение для
0
|
||||||||
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
||
| 18.02.2025, 13:00 | ||
|
*** по определению вектора, промежуточные элементы должны быть созданы, и они должны что-то хранить, например, либо мусор, либо нули, что вообще не эффективно, т.к. увеличивает capacity и память, выделенную под вектор. вот, unordered_map не обязан непрерывно хранить, и там есть корзиночки, которые эффективно хранят разбросанный по Вселенной элементы.
0
|
||
|
|
|||||||||||||
| 18.02.2025, 13:08 | |||||||||||||
Но, соглашусь, что в каких то случаях это может быть опасно. Однако это гораздо безопаснее чем выход за пределы если сделать:
0
|
|||||||||||||
| 18.02.2025, 13:34 | |
|
0
|
|
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
||
| 18.02.2025, 13:38 | ||
|
Оно ровно про это Вопрос терминологии же. В рамках C++ массивом называется непрерывное (по индексам) хранилище, а хранилище вида "ключ-значени" реализует map. Зачем смешивать.
0
|
||
|
|
|||
| 18.02.2025, 13:43 | |||
|
0
|
|||
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
|||
| 18.02.2025, 13:55 | |||
|
Могли бы поподробнее развернуть?
0
|
|||
|
2689 / 1346 / 485
Регистрация: 08.11.2016
Сообщений: 3,734
|
|||||
| 18.02.2025, 13:59 | |||||
|
это утверждение Добавлено через 30 секунд
0
|
|||||
| 18.02.2025, 14:11 | |
|
0
|
|
|
|
|||||||
| 18.02.2025, 14:16 | |||||||
0
|
|||||||
|
737 / 704 / 110
Регистрация: 29.05.2015
Сообщений: 4,316
|
|
| 18.02.2025, 14:22 | |
|
Если в массив можно добавлять/удалять данные не меняя его длину (меняется автоматически) - значит массив динамический. Как там всё устроено внутри (в куче, не в куче) - кому это интересно?
0
|
|
| 18.02.2025, 14:22 | |
|
Скорость работы std::vector и обычного динамического массива Динамические массивы типа vector и array Как правильно записывать в динамический массив типа класса обьекты? вот банальный пример Реализовать шаблон класса vector, реализующий динамический массив На основе контейнера vector построить двумерный динамический массив Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Теория всего 6. Судьба неотвратима?
anaschu 21.07.2026
Математическое доказательство Судьбы: Точка бифуркации в едином тензорном ядре Модели ВсегоСвежее обновление питоновского ядра «Soil Chemistry 2. 0» дало нам неопровержимое математическое. . .
|
Теория всего 5. ядро Теории Всего: Математический изоморфизм репликаторов и иллюзия свободы воли
anaschu 21.07.2026
Единое ядро Теории Всего: Математический изоморфизм репликаторов и иллюзия свободы воли
Главная задача «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы» (аттракторов. . .
|
сукцессия 37. Внедрил дипсик в свой оркестр из ИИ. У него закончилось пространство чата, потому опубликую выводы из его работы здесь
anaschu 21.07.2026
====================================================================
КОНТЕКСТ: Моделирование микоризной сукцессии (AM → ECM)
====================================================================
. . .
|
сукцессия 36. Делаю прогоны модели около порога бифуркации (превращения эндо микоризы в экто микоризу)
anaschu 21.07.2026
СУКЦЕССИЯ МИКОРИЗ: КАК МАТЕМАТИКА ОБЪЯСНЯЕТ ПОДЗЕМНУЮ ВОЙНУ
Мы привыкли думать, что лес — это деревья. А грибы — это то, что мы собираем в корзинку осенью. Но если заглянуть под землю, окажется,. . .
|
|
ИИ и человечность
kumehtar 21.07.2026
Забавно, что общаясь с ИИ, я замечаю, насколько он высказывается умно, и насколько верит в людей. Он умеет прощать. Он знает как отвечать не обесценивая опыт других людей, даже если сам не верит. Он. . .
|
Нейтральные знания ..., ... чистая наука. Пока что-то проходит модерацию на Хабре, стоит развить мысль ...
Hrethgir 20.07.2026
К таким радикальным взглядам я конечно в той публикации не приходил, но чтобы скоротать вечер, решил углубиться немного.
1. Почему показания термометра заряжены целью?
Цель заложена в самом. . .
|
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
|
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
|