﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Релиб / Программирование / C++  / Динамическое выделение памяти / Latest Posts</title><generator>InstantForum.NET v4.1.4</generator><description>Релиб</description><link>http://www.relib.com/forums/</link><webMaster>robot@relib.com</webMaster><lastBuildDate>Wed, 03 Dec 2008 10:41:19 GMT</lastBuildDate><ttl>20</ttl><item><title>RE: Динамическое выделение памяти</title><link>http://www.relib.com/forums/Topic909306-7-1.aspx</link><description>[quote]нуу.... уж коли пошли критиковать правильность, то хотя бы массивы удаляйте так как это принято стандартом C++&lt;br&gt;&lt;br&gt;for (int i = 0; i &lt; firstRes; i++) {&lt;br&gt;delete[] mass[i];&lt;br&gt;}&lt;br&gt;[/quote]&lt;br&gt;&lt;br&gt;верно :)&lt;br&gt;прошу прощения</description><pubDate>Sun, 25 Feb 2007 02:03:26 GMT</pubDate><dc:creator>genok</dc:creator></item><item><title>RE: Динамическое выделение памяти</title><link>http://www.relib.com/forums/Topic909306-7-1.aspx</link><description>[quote][b]genok (24.02.2007)[/b][hr]правильный код?&lt;br&gt;если так код писать, то большие проекты будут коряво выглядеть.&lt;br&gt;выделение динамической памяти под многомерные массивы проще и нагляднее выполняется в циклах.&lt;br&gt;&lt;br&gt;Двумерный массив:&lt;br&gt;&lt;br&gt;static int firstRes = 10;&lt;br&gt;static int secondRes = 100;&lt;br&gt;&lt;br&gt;int **mass = NULL;&lt;br&gt;mas = new int*[firstRes];&lt;br&gt;for (int i = 0; i &lt; firstRes; i++) {&lt;br&gt;    mass[i] = new int[secondRes];&lt;br&gt;}&lt;br&gt;...usage mass&lt;br&gt;for (int i = 0; i &lt; firstRes; i++) {&lt;br&gt;    delete mass[i];&lt;br&gt;}&lt;br&gt;delete []mass;&lt;br&gt;&lt;br&gt;[/quote]&lt;br&gt;&lt;br&gt;нуу.... уж коли пошли критиковать правильность, то хотя бы массивы удаляйте так как это принято стандартом C++&lt;br&gt;&lt;br&gt;for (int i = 0; i &lt; firstRes; i++) {&lt;br&gt;    delete[] mass[i];&lt;br&gt;}&lt;br&gt;&lt;br&gt;С уважением,&lt;br&gt;Владимир</description><pubDate>Sat, 24 Feb 2007 14:30:56 GMT</pubDate><dc:creator>boombastik</dc:creator></item><item><title>RE: Динамическое выделение памяти</title><link>http://www.relib.com/forums/Topic909306-7-1.aspx</link><description>правильный код?&lt;br&gt;если так код писать, то большие проекты будут коряво выглядеть.&lt;br&gt;выделение динамической памяти под многомерные массивы проще и нагляднее выполняется в циклах.&lt;br&gt;&lt;br&gt;Двумерный массив:&lt;br&gt;&lt;br&gt;static int firstRes = 10;&lt;br&gt;static int secondRes = 100;&lt;br&gt;&lt;br&gt;int **mass = NULL;&lt;br&gt;mas = new int*[firstRes];&lt;br&gt;for (int i = 0; i &lt; firstRes; i++) {&lt;br&gt;    mass[i] = new int[secondRes];&lt;br&gt;}&lt;br&gt;...usage mass&lt;br&gt;for (int i = 0; i &lt; firstRes; i++) {&lt;br&gt;    delete mass[i];&lt;br&gt;}&lt;br&gt;delete []mass;&lt;br&gt;&lt;br&gt;</description><pubDate>Sat, 24 Feb 2007 13:23:18 GMT</pubDate><dc:creator>genok</dc:creator></item><item><title>RE: Динамическое выделение памяти</title><link>http://www.relib.com/forums/Topic909306-7-1.aspx</link><description>нуууу если это часть кода... то верхняя его половина (там где new int [MAX]) создает массивы, цикл заполняет эти массивы данными из других массивов (arr, arr2, arr3), а нижняя часть кода (там где delete) освобождает, созданные выше, массивы.&lt;br&gt;&lt;br&gt;если дать волю воображению, то можно предположить, что во временных массивах сохраняются промежуточные данные от каких-то вычислений, причем требуется 2 копии - оригинальная (arr, arr2, arr3) и рабочая (p, p2, p3), потому как одна из них будет изменяться, а в конце, перед delete проводится сравнение результатов&lt;br&gt;&lt;br&gt;сказать что либо больше сложно, нужно смотреть, что происходит с массивами&lt;br&gt;&lt;br&gt;С уважением,&lt;br&gt;Владимир</description><pubDate>Thu, 28 Dec 2006 12:50:08 GMT</pubDate><dc:creator>boombastik</dc:creator></item><item><title>RE: Динамическое выделение памяти</title><link>http://www.relib.com/forums/Topic909306-7-1.aspx</link><description>Нам он тоже неясен. boombastik правильно сказал что код верный, но бессмысленный.</description><pubDate>Thu, 28 Dec 2006 11:14:24 GMT</pubDate><dc:creator>bazile</dc:creator></item><item><title>RE: Динамическое выделение памяти</title><link>http://www.relib.com/forums/Topic909306-7-1.aspx</link><description>Дело в том, что эти массивы хранят некоторые значения от вычислений. Здесь я продемонстрировал сегмент кода, который, мне до конца, неясен.</description><pubDate>Thu, 28 Dec 2006 08:53:39 GMT</pubDate><dc:creator>Alex_p</dc:creator></item><item><title>RE: Динамическое выделение памяти</title><link>http://www.relib.com/forums/Topic909306-7-1.aspx</link><description>у него просто задание: написать пример динамического выделения памяти под массив переменной длины на С++ ;)&lt;br&gt;&lt;br&gt;в принципе все верно сделано, только код бессмысленный&lt;br&gt;&lt;br&gt;Удачи,&lt;br&gt;Владимир</description><pubDate>Wed, 27 Dec 2006 22:05:14 GMT</pubDate><dc:creator>boombastik</dc:creator></item><item><title>RE: Динамическое выделение памяти</title><link>http://www.relib.com/forums/Topic909306-7-1.aspx</link><description>Хотя погоди. Если у тебя уже есть объявление вида int arr[MAX], то непонятно зачем создавать копию массива в динамической памяти. Что ты в итоге хочешь получить?</description><pubDate>Wed, 27 Dec 2006 18:49:31 GMT</pubDate><dc:creator>bazile</dc:creator></item><item><title>RE: Динамическое выделение памяти</title><link>http://www.relib.com/forums/Topic909306-7-1.aspx</link><description>По моему все правильно сделано.</description><pubDate>Wed, 27 Dec 2006 18:46:45 GMT</pubDate><dc:creator>bazile</dc:creator></item><item><title>Динамическое выделение памяти</title><link>http://www.relib.com/forums/Topic909306-7-1.aspx</link><description>Есть следующее объявление&lt;P&gt;[code]&lt;/P&gt;&lt;P&gt;#include&amp;lt;iostream&amp;gt;&lt;/P&gt;&lt;P&gt;#define MAX 1000&lt;/P&gt;&lt;P&gt;//=======================&lt;/P&gt;&lt;P&gt;int  arr[MAX];&lt;/P&gt;&lt;P&gt;int  arr2[MAX];&lt;/P&gt;&lt;P&gt;int arr3[MAX];&lt;/P&gt;&lt;P&gt;//================&lt;/P&gt;&lt;P&gt;int main()&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;    &lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;[/code]&lt;P&gt;Для указанных масивов требуется выделить память.&lt;P&gt;Мой вопрос: следующая организация выделения динамической памяти будет правильной?&lt;P&gt;[code]&lt;P&gt;int main()&lt;P&gt;{&lt;P&gt;    int *p, *p2, *p3;&lt;P&gt;    p = new int [MAX];&lt;P&gt;    p2 = new int [MAX];&lt;P&gt;    p3  = new int [MAX];&lt;P&gt;    for( int i = 0; i &amp;lt; MAX; i++)&lt;P&gt;{&lt;P&gt;          p[i] = arr[i];&lt;P&gt;          p2[i] = arr2[i];&lt;P&gt;          p3[i] = arr3[i]; &lt;P&gt;}&lt;P&gt;   ...&lt;P&gt;  delete [] p;&lt;P&gt; delete []p2;&lt;P&gt; delete [] p3;&lt;P&gt;}&lt;P&gt;[/code]&lt;P&gt;Или это можно сделать иначе?</description><pubDate>Wed, 27 Dec 2006 18:36:11 GMT</pubDate><dc:creator>Alex_p</dc:creator></item></channel></rss>