|
0 / 0 / 0
Регистрация: 15.02.2025
Сообщений: 10
|
||||||
Является ли vector примером динамического массива?17.02.2025, 19:33. Показов 8110. Ответов 72
Метки нет (Все метки)
Является ли vector примером динамического массива? Вопрос может звучать странно и я вижу в нем однозначный ответ, что вектор все таки является примером динамического массива, но все равно, хотелось бы убедиться, потому что мнения в интернете расходятся
(Готовлюсь к зачету в унике, вопросы по теории это бред, из-за формулировки некоторых нельзя дать однозначный ответ, поэтому не бейте палками)В каких строках приведен пример динамического массива?
0
|
||||||
| 17.02.2025, 19:33 | |
|
Ответы с готовыми решениями:
72
Является ли такое решение задачи примером динамического программирования? Что является причиной ошибки после завершения всех операций? (динамический массив) Собственный динамический массив (аналог std::vector) |
| 18.02.2025, 14:28 | |
|
0
|
|
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
|
| 18.02.2025, 15:07 | |
|
0
|
|
|
2689 / 1346 / 485
Регистрация: 08.11.2016
Сообщений: 3,734
|
|||
| 18.02.2025, 15:14 | |||
|
0
|
|||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||||||||
| 18.02.2025, 17:14 | ||||||||
|
Не по теме: Поэтому как бы можно было бы посчитать что динамических массивов в чистом виде нет. Не прибегая ко всяким кастам, placement new и другим извращениям. Как бы вроде способ, хоть и костыльный :
0
|
||||||||
|
|
|||
| 18.02.2025, 17:22 | |||
|
0
|
|||
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
||
| 18.02.2025, 17:31 | ||
|
0
|
||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||||
| 18.02.2025, 17:37 | ||||
|
Ты теплое с мягким попутал Добавлено через 1 минуту ![]() Астанавите, Вите надо выйти. )) Добавлено через 1 минуту
0
|
||||
|
фрилансер
6496 / 5727 / 1133
Регистрация: 11.10.2019
Сообщений: 15,289
|
||||||||||||
| 18.02.2025, 20:43 | ||||||||||||
|
Можно передать и по значению (в составе структуры) и по указателю/ссылке на массив
size in bytes==240
0
|
||||||||||||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||||
| 18.02.2025, 21:52 | |||||
|
Есть pointer. Есть storage. Всё можно ясно выразить. ![]() Добавлено через 3 минуты
0
|
|||||
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
|||
| 18.02.2025, 22:23 | |||
|
0
|
|||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||||
| 19.02.2025, 00:28 | ||||
|
При доступе к элементам вектора выше index < size() - поведение не определенно. По вполне понятным причинам. Говорить о каких то "затирает данные" "за хвостом", довольно глупо.
1
|
||||
|
|
||||||||
| 19.02.2025, 11:54 | ||||||||
0
|
||||||||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||
| 19.02.2025, 12:03 | ||
|
Коротко. Цели : универсальность, гибкость и производительность. Подробнее погуглишь сам. Я лично не вижу там ничего "недоработанного", что бы это ни значило. Чего то может не хватает. Но то что уже есть, лучше не будет. Исходя их своего назначения.
0
|
||
|
|
||||||||
| 19.02.2025, 12:11 | ||||||||
Подозреваю, что throw всё таки выбрасывается, так как в дебаггере я наткнулся на вызов throw. Однако никаких предупреждений от компилятора я явно не получил. и такая ошибка может оказаться незамеченной. По крайней мере можно было сделать так: если индекс выходит за пределы вектора, то неявно вызывается push_back().
0
|
||||||||
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
|||
| 19.02.2025, 12:20 | |||
|
Также предполагаю, что есть опции компилятора проверять / не проверять границы в векторе (с ходу не нагуглилось чета) Добавлено через 3 минуты Есть документированное поведение. Если вы почему-то от вектора ожидаете другого поведения "потому что в языке Х то, что там названо массивом, работает вот так и я к этому привык" - то это, извините, сугубо ваши проблемы. В С++ ожидаемое вами поведение документировано для map. Используйте map со всеми его недостатками, а вектор - он для другого. Что не мешает быть вектору абсолютно и полностью динамическим.
2
|
|||
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
||
| 19.02.2025, 12:20 | ||
|
CoderHuligan, это сделано специально. Любая проверка влияет на производительность. Если нужны проверки, то используй at, которая выбросит исключение. Если ты уверен в своем коде, то используй [], который ничего не проверяет и поэтому быстрее at
2
|
||
|
фрилансер
6496 / 5727 / 1133
Регистрация: 11.10.2019
Сообщений: 15,289
|
|
| 19.02.2025, 12:30 | |
|
1
|
|
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||||||
| 19.02.2025, 13:16 | |||||||
|
Используем алгоритмы, одни и те же для разных данных. Если нужен массив из 20 элементов - используем std::array из 20 элементов. Нужен массив из N - используем std::array. Нужен массив из "а ХЗ из сколько элементов" - берем карандаш в руки и рисуем :
![]() Теперь у меня вопрос. А кому оно надо в С++ то???
2
|
|||||||
|
|
||
| 19.02.2025, 13:18 | ||
0
|
||
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
|||
| 19.02.2025, 13:24 | |||
|
Есть документация, в ней написано что на самом деле надо ожидать, и если мои фантазии разбились об реальность - так это моя проблема. Да даже банальный resize уже готов и оттестирован, зачем массив??
1
|
|||
| 19.02.2025, 13:24 | |
|
Скорость работы std::vector и обычного динамического массива Динамические массивы типа vector и array Как правильно записывать в динамический массив типа класса обьекты? вот банальный пример Реализовать шаблон класса vector, реализующий динамический массив На основе контейнера vector построить двумерный динамический массив Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Нейтральные знания ..., ... чистая наука. Пока что-то проходит модерацию на Хабре, стоит развить мысль ...
Hrethgir 20.07.2026
К таким радикальным взглядам я конечно в той публикации не приходил, но чтобы скоротать вечер, решил углубиться немного.
1. Почему показания термометра заряжены целью?
Цель заложена в самом. . .
|
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
|
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
|
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения.
https:/ / habr. com/ ru/ sandbox/ 295048/
По ссылке 403. Не очень информативно такую ссылку постить.
Запись от Usaga размещена Сегодня в 06:46 . . .
|
|
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
|
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано
Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
|
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано
Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
|
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0)
Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона
Уважаемые коллеги!
В продолжение. . .
|