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

Деструктор для массива матриц... - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Какую функцию выполняет switch? http://www.cyberforum.ru/cpp-beginners/thread58833.html
какую функцию,выполняет switch?скажем есть switch(10); case 1: case 2: ... break; эта цифра 10,означает что типа 10 выборов что ли?
C++ Записать текст с клавиатуры в массив вот сам решил задачу решить,задуманую мной..существует массив а вводить с клавиатуры слова и записать в нее...но что то у меня цикл бесконечный,я вроде по массивам сильно присильно отстал...вот мой код int main(){ int i=0; int c=0; char *a; while((c=getchar())!=EOF){ while(a!='\0'){ i++; http://www.cyberforum.ru/cpp-beginners/thread58827.html
Ветвления C++
Всем привет! Задали задачку : "С помощью операторов ветвлений и присваивания записать фрагмент программы, вычисляющий значение переменной n по следующему правилу: n := [ n+1, при i=4, [ a+b, при i=1 или i=7 или i=9, [ a-b в остальных случаях Народ, надо написать прогу с помощью оператора switch... Я писала с помощью if, сказали через switch пиши... Все заранее спасибо!
C++ if(...){} else{}
Привет.народ дайте консультацию в функции можно писать через else??? если да то как??? if (MyLavandos.Init(MyLavandos.first,MyLavandos.second)== 0) break; return 0 и как???
C++ Вектор чисел. http://www.cyberforum.ru/cpp-beginners/thread58803.html
Нужно написать прогу, сам пытался но не смог. (желательно с обьяснением) Заранее спасибо! Если в заданном целочисленном векторе A(N) есть элементы со значением, равным заданному числу B, то переменной С присвойте значение, равное сумме всех элементов, предшествующих первому по порядку такому элементу; в противном случае вывести соответствующий текст.
C++ Классы и объекты народ кто может помочь???не могу найти ошибку... #include "stdafx.h" #include <iostream> #include <math.h> using namespace::std; struct money { int l,m,first,second,c; int dengi(int x,int y) подробнее

Показать сообщение отдельно
Vladd
0 / 0 / 0
Регистрация: 25.10.2009
Сообщений: 11
26.10.2009, 19:42  [ТС]     Деструктор для массива матриц...
Цитата Сообщение от M128K145 Посмотреть сообщение
попробуй
так
C++
1
2
3
4
5
6
7
for (int i = 0; i < _masDimension; ++i)
{
    for (int z = 0; z < _rows; ++z)
        delete[] _matrix[z][i];
    delete[] _matrix[i];
}
delete[] _arrayOfMatrix;
Попробовал, пишет что _matrix необъявленный идентификатор... Я подумал, что может у меня создание неправильно реализовано.. В общем вот код:

Matrix.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Matrix
{
private:
    int** _matrix;
    int _rows, _cols;
 
    void Create();
    void Filling();
 
public:
    Matrix();
    Matrix(int i);
    Matrix(int i, int j);
    Matrix(const Matrix&);
 
    ~Matrix();
};

Matrix.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
void Matrix::Create()
{
    _matrix = new int*[_rows];
    for (int z = 0; z < _rows; z++)
    _matrix[z] = new int[_cols];
}
 
void Matrix::Filling()
{
    srand(time(NULL));
    for (int i = 0; i < _rows; ++i)
    for (int j = 0; j < _cols; ++j)
        _matrix[i][j] = rand()%10;
}
 
Matrix::Matrix():_rows(5), _cols(5) { Create(), Filling(); }
 
Matrix::Matrix(int i): _rows(i), _cols(i) { Create(); Filling(); }
 
Matrix::Matrix(int rows, int cols): _rows(rows), _cols(cols) { Create(); Filling(); }
 
Matrix::Matrix(const Matrix& m)         
{
    _rows = m._rows;
    _cols = m._cols;
    Create();
    for (int i = 0; i < _rows; ++i)
        for (int j = 0; j < _cols; ++j)
            _matrix[i][j] = m._matrix[i][j];
}
 
Matrix::~Matrix()
{
    for (int z = 0; z < _rows; z++)
        delete[] _matrix[z];
    delete[] _matrix;
}

ArrayOfMatrix.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class ArrayOfMatrix
{
    private:
    Matrix* _arrayOfMatrix;
    int _masDimension;
    int _rows, _cols;
    void Create ();
    Matrix Creator();
        
    public:
    ArrayOfMatrix(int, int, int);           // 1ое число: размер массива, 2ое и 3ье: размеры матрицы
 
    ~ArrayOfMatrix();
}

ArrayOfMatrix.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
void ArrayOfMatrix::Create()
{
    _arrayOfMatrix = new Matrix[_masDimension];
    for (int i = 0; i < _masDimension; ++i)
    _arrayOfMatrix[i] = Creator();
}
 
Matrix ArrayOfMatrix::Creator()
{
    Matrix obj;
    return obj;
}
 
ArrayOfMatrix::ArrayOfMatrix(int masDimension, int rows, int cols) 
{   
    _rows = rows;
    _cols = cols;
    _masDimension = masDimension;
    Create();
}
 
ArrayOfMatrix::~ArrayOfMatrix()
{
    for (int i = 0; i < _masDimension; ++i)
    {
        for (int z = 0; z < _rows; ++z)
        delete[] _matrix[z][i];
        delete[] _matrix[i];
    }
    delete[] _arrayOfMatrix;
}

Не спрашивайте почему я так модно создаю массив матриц Зато сам придумал
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru