Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Настя223
1 / 1 / 0
Регистрация: 11.04.2014
Сообщений: 61
1

Двумерный массив класса

24.01.2015, 11:16. Просмотров 293. Ответов 5
Метки нет (Все метки)

Помогите, пожалуйста, как создать двумерный массив класса на с++.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.01.2015, 11:16
Ответы с готовыми решениями:

Двумерный массив в параметре класса
Есть класс, одним из параметров которого нужно сделать массив с тремя столбцами...

Большой двумерный массив как член класса
Размеры массива 2048 на 512. Создал, заполняю в конструкторе, но результата...

двумерный массив в качестве параметра метода класса
Добрый день Есть проблемка, попробую упростить условия по максимуму: В...

Функция возвращает двумерный статический массив своего класса
Есть класс whirlpool: class whirlpool { public: int *buffer; int...

Двумерный массив в динамической памяти как поле класса
Здравствуйте! Вот так можно описать двумерный массив в дин.памяти. class...

5
rocknrolla1
Заблокирован
24.01.2015, 11:21 2
Настя223,
C++
1
2
3
4
5
6
7
8
class Matrix
{
    public:
        Matrix();
    private:
        int     **m_matrix;
        size_t  m_size;
};
0
alexmay
0 / 0 / 0
Регистрация: 29.07.2014
Сообщений: 22
24.01.2015, 11:52 3
Настя223,
C++
1
2
3
4
int mas[2][2] = {
        { 1, 2 }
    ,   { 2, 2 }
};
динамически

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
const int W = 8;
const int H = 8;
 
// allocate memory and fill by 'x*y'
        mas = new int*[W];
        for (int x = 0; x < H; ++x)
        {
            mas[x] = new int[H];
            for (int y = 0; y < W; ++y)
            {
                mas[x][y] = x * y;
            }
        }
 
// free memory
        for (int j = 0; j < W; ++j)
        {
            delete mas[j];
        }
        delete[] mas;
0
ValeryS
Модератор
7446 / 5638 / 716
Регистрация: 14.02.2011
Сообщений: 19,207
Завершенные тесты: 1
24.01.2015, 12:19 4
Цитата Сообщение от Настя223 Посмотреть сообщение
пожалуйста, как создать двумерный массив класса на с++.
вопрос не понятен
Сделать чтобы в классе был двумерный массив?
тогда rocknrolla1, показал
или двумерный массив объектов класса
тогда
C++
1
2
3
4
5
class A
{
................
}
A a[size1][size2]
Добавлено через 1 минуту
Цитата Сообщение от alexmay Посмотреть сообщение
C++
1
2
3
4
 mas = new int*[W];
        for (int x = 0; x < H; ++x)
        {
            mas[x] = new int[H];
может
C++
1
 for (int x = 0; x < W; ++x)
1
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
7171 / 3443 / 469
Регистрация: 04.12.2011
Сообщений: 9,665
Записей в блоге: 5
24.01.2015, 12:24 5
Я так увидел:
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
38
39
40
41
42
43
44
45
46
47
48
49
#include <iostream>
using namespace std;
 
class AClass{
public:
    AClass(){
a=0;
    }
    AClass( const AClass &rhs ){
a = rhs.a;
    }
 
AClass( const int rhs ){
a = rhs;
    }
int getA() const { return a; }
int setA( int a_  ) { a = a_; }
 
private:
int a;
};
 
int main()
{
    //создадим 2 массива - локалбный и динамический
    AClass arrLocalAClass[2][3]; 
 
    AClass **arrDynAClass = new AClass * [2];
 
for( int i = 0 ; i < 2 ; ++i )
arrDynAClass[i] = new AClass[3];
 
//инициализируем
for( int i = 0 ; i < 2; ++ i )
for( int j = 0 ; j < 3; ++ j )
arrLocalAClass[i][j] = arrDynAClass[i][j] = i ;
 
for( int i = 0 ; i < 2; ++ i ){
    for( int j = 0 ; j < 3; ++ j ){
cout<<arrLocalAClass[i][j].getA()<<" "<<arrDynAClass[i][j].getA()<<"\t";
    }
    cout<<endl;
}
for( int i = 0 ; i < 2; ++ i ) delete [] arrDynAClass[i] ;
delete [] arrDynAClass;
    cout<<endl;
system("pause");
    return 0;
}

Не по теме:

ValeryS, я долго возился (не дают заняться )) :)

0
alexmay
0 / 0 / 0
Регистрация: 29.07.2014
Сообщений: 22
24.01.2015, 13:54 6
Цитата Сообщение от ValeryS Посмотреть сообщение
for (int x = 0; x < W; ++x)
в описанном мной примере здесь нету разницы, т.к. H=W=8
ну а в общем случае Вы правы
0
24.01.2015, 13:54
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.01.2015, 13:54

Как можно вложить двумерный массив в двумерный?
Нужно написать программу перемножения двух матриц размерностью МxМ, элементы...

Массив: Как скопировать двумерный массив в другой массив?
Как скопировать двумерный массив в другой массив?

Как переместить из стека одного класса в массив другого класса?
// HW_on.24.11_classStack_SantaClaus.cpp: определяет точку входа для...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru