Форум программистов, компьютерный форум CyberForum.ru

Класс матрицы, выделение динамической памяти - C++

Восстановить пароль Регистрация
 
oooooowl
0 / 0 / 0
Регистрация: 27.01.2014
Сообщений: 48
07.04.2014, 20:38     Класс матрицы, выделение динамической памяти #1
Здравствуйте! Помогите, пожалуйста, со следующим вопросом: мне необходимо создать класс для описания матрицы. Я не совсем понимаю, где в private или public выделять под нее память. В разных программах на форуме пишут по-разному. Насколько я понимаю, это место, выделяемое под массив напрямую зависит от данных о размере, которые пользователь вводит сам и тогда нужно ставить public. Или все же нет? Нужно ли сокрытие информации в данном случае, то есть private?

Буду благодарна за подробное изъяснение ваших мыслей!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2014, 20:38     Класс матрицы, выделение динамической памяти
Посмотрите здесь:

C++ Выделение динамической памяти для матрицы
C++ Выделение динамической памяти
Выделение динамической памяти C++ C++
C++ выделение динамической памяти
C++ Выделение динамической памяти для матрицы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5949 / 5554 / 1785
Регистрация: 18.12.2011
Сообщений: 14,193
Завершенные тесты: 1
07.04.2014, 20:40     Класс матрицы, выделение динамической памяти #2
Память выделяется в конструкторе, а удаляется в деструкторе.
C++
1
2
3
4
5
6
7
8
class A
{
   int* x;
   int N;
public:
   A(int n){N=n;x=new int[n];}
   ~A(){delete[] x;}
}
oooooowl
0 / 0 / 0
Регистрация: 27.01.2014
Сообщений: 48
07.04.2014, 20:45  [ТС]     Класс матрицы, выделение динамической памяти #3
Спасибо! Не подскажете, как выделить память в конструкторе для двумерного массива?
zss
Модератор
Эксперт С++
 Аватар для zss
5949 / 5554 / 1785
Регистрация: 18.12.2011
Сообщений: 14,193
Завершенные тесты: 1
07.04.2014, 21:17     Класс матрицы, выделение динамической памяти #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class A
{
   int** x;
   int N,M;
public:
   A(int n,int m)
  {
      N=n;
      M=m;
      x=new int*[n];
      for(int i=0;i<n;i++)
         x[i]=new int[m];
   }
   ~A()
   {
      for(int i=0;i<n;i++)
             delete[] x[i];
      delete[] x;
   }
};
Yandex
Объявления
07.04.2014, 21:17     Класс матрицы, выделение динамической памяти
Ответ Создать тему
Опции темы

Текущее время: 21:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru