![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 05.09.2017
Сообщений: 21
|
![]()
Здравствуйте у меня вопрос на засыпку.
массив указателей на int в моём примере это двумерный массив получается. почему когда при освобождении памяти я освобождаю только начало адреса массива и сразу освобождаются все строки и столбцы? когда в массиве указателей на строки надо освобождать каждую строку по отдельности и только потом освободить адрес массива ? есть ли какая-то разница или может я что то не правильно делаю? потому что я пробовал удалят интовые строки и он ругается сразу т.к одним махом всё удаляет а повторно удалит какую то не известную память он естественно не может т.к её не существует. |
![]() |
![]() |
![]() |
#2 | |||
Старожил
Регистрация: 15.02.2010
Сообщений: 15,725
|
![]() Цитата:
Цитата:
Цитата:
|
|||
![]() |
![]() |
![]() |
#3 | |
Пользователь
Регистрация: 05.09.2017
Сообщений: 21
|
![]() Цитата:
Код:
|
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 12.04.2017
Сообщений: 889
|
![]()
Это вообще бред сивой кобылы..
..вы в игры играете? Слышали про мульти-поточное ускорение и все такое вообще? вот это Код:
Вобще, если есть желание заморачиватся с таким управлением памяти ручным, нужно делать доп. вещи типа Код:
...и постепенно вы доизобретете std::vector (https://habrahabr.ru/company/infopulse/blog/194726/) Последний раз редактировалось alexzk; 05.04.2018 в 02:23. |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 05.09.2017
Сообщений: 21
|
![]()
не понимаю в чём причина в моём коде что не так? вы дали пример не объяснив мой. Зачем мне хранить указатель в структуре когда я его просто посылаю по функциям куда мне надо не вижу смысла менять код.
и чем вас не устраивает этот вариант он статический инициализируется всего лишь один раз он всего то нужен для того что бы помнить предыдущий размер. Код:
Последний раз редактировалось FerrariF70; 05.04.2018 в 07:45. |
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,725
|
![]()
А теперь прочитайте про потоки... Вы думаете их просто так упомянули?
|
![]() |
![]() |
![]() |
#7 | |
Форумчанин
Регистрация: 12.04.2017
Сообщений: 889
|
![]() Цитата:
У вас в кармане тел на 4 ядра, комп на 4-8 ядер и т.д. Все и везде с кучей ядер. А это означает, что вероятно, какието куски ваших программ будут исполнятся параллельно (т.е. одновременно). Т.о. даже учится писать вот такие статики в нынешнем мире не стоит. Просто запоминайте, как делать не нужно. Ваша запись однозначно делает не возможным использование многих ядер. Можно более понятно, а что, если вы захотите этой же функцией создать 2й массив иного размера? В принципе ф. принимая параметр позволяет это делать, но ваш статик делает ее конкретным решением конкретного случая, а не общим "выделятором памяти". Код:
Последний раз редактировалось alexzk; 05.04.2018 в 10:49. |
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 05.09.2017
Сообщений: 21
|
![]() |
![]() |
![]() |
![]() |
#9 | |
Форумчанин
Регистрация: 12.04.2017
Сообщений: 889
|
![]() Цитата:
![]() Кстати да, есть утечка при УМЕНЬШЕНИИ размера ![]() Последний раз редактировалось alexzk; 05.04.2018 в 11:30. |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
массив указателей | nwhta | Помощь студентам | 2 | 23.11.2016 15:22 |
Массив указателей. | dmitrykzmn | Общие вопросы C/C++ | 8 | 20.01.2016 19:41 |
Массив указателей | CaXaH | Общие вопросы C/C++ | 11 | 25.09.2012 12:06 |
Указатель на массив указателей на массив char'ов... | SrgGld | Общие вопросы C/C++ | 0 | 19.11.2010 23:35 |
Массив указателей | askar | Общие вопросы C/C++ | 5 | 07.09.2010 23:11 |