10 / 10 / 1
Регистрация: 17.10.2011
Сообщений: 114
1

Возврат массива из класса

20.12.2011, 02:30. Показов 1812. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
вот класс в котором есть массив а
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Population1
 {
 public:
 Population1(int,int);
 ~Population1();
 int ProvLife(int, int);
 void DeathOrLife();
 void CreateArray();
   // unsigned short** Output(){return a};
 private:
 unsigned short** a;
   //long stepper;
   int Xdemen, Ydemen;
};]
в классе происходит всякая реализация этого массива он заполняется числами, и как мне его возратить из классе и передать другому массиву, который будет рисовать, т.е. как мне возвратить этот массив из класса?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.12.2011, 02:30
Ответы с готовыми решениями:

Возврат vector из класса
Здравствуйте. Из класса ячеек нужно вернуть номера соседних клеток. Думал сделать через вектор....

Возврат значения объектом класса
Может ли экземпляр класса возвращать значение своего поля без обращения к полю напрямую например ...

Инициализация класса, возврат значений
Сама задача: Реализовать класс Rectangle. Класс должен хранить координаты, а так же длину и ширину...

Возврат объекта класса из функции
Имеется следующий код: #include "stdafx.h" #include <iostream> using namespace std; ...

2
1186 / 542 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
20.12.2011, 02:55 2
iKarma, да никак, сделайте второй класс дружественным (friend) для первого и пусть второй класс просто считывает данные из вашего массива a или копирует его себе куда надо.
0
278 / 173 / 21
Регистрация: 10.07.2011
Сообщений: 441
20.12.2011, 07:25 3
Цитата Сообщение от Gepar Посмотреть сообщение
да никак
.
вообще можно.. только делать так на мой взгляд катострофически опасно, даже бы сказал нельзя вообще

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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <iostream>
using std::cout;
using std::endl;
 
#include <iomanip>
using std::setw;
 
class Population1 {
public:
    Population1(int, int);
    ~Population1();
    int ProvLife(int, int);
    void DeathOrLife();
    void CreateArray();
    // unsigned short** Output(){return a};
 
    unsigned short **getPtrToMyMatrix();
 
private:
    unsigned short** a;
    //long stepper;
    int Xdemen, Ydemen;
};
 
Population1::Population1(int x, int y) :
        Xdemen(x), Ydemen(y) {
}
 
void Population1::CreateArray() {
    a = new unsigned short*[Xdemen];
    for (int i = 0; i < Xdemen; ++i) {
        a[i] = new unsigned short[Ydemen];
        for (int j = 0; j < Xdemen; ++j) {
            a[i][j] = i*Ydemen + j;
        }
    }
}
 
unsigned short **Population1::getPtrToMyMatrix() {
    return a;
}
 
Population1::~Population1() {
}
 
int main() {
 
    const int matrixSize = 4;
 
    Population1 p1(matrixSize, matrixSize);
    p1.CreateArray();
 
    unsigned short **ptrToMatrix;
 
    ptrToMatrix = p1.getPtrToMyMatrix();
 
    for (int i = 0; i < matrixSize; ++i) {
        for (int j = 0; j < matrixSize; ++j) {
            cout << setw(3) << ptrToMatrix[i][j];
        }
        cout << endl;
    }
 
    return 0;
}
iKarma
в классе происходит всякая реализация этого массива
Все зависит от вашей программы и логики создания объектов которой вы придерживаетесь в вашей программе.
Например почему бы не создавать матрицу в самой программе а потом не передавать ее объекту класса для обработки ? Или же ... есле вам нужны данные из матрицы которая является атрибутом объекта то почему бы не написать методы при обращении к которым вы будете подучать данные которые вам нужны ? и т.д.
0
20.12.2011, 07:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.12.2011, 07:25
Помогаю со студенческими работами здесь

Возврат функцией экземпляра класса
Подскажите, будет ли корректной с точки зрения выделения памяти и всего прочего такая запись:...

возврат копии обьекта класса из метода
Привет всем. Есть класс ниже в нём operator+. Помогите компилятор выдаёт ворнинг warning C4172:...

Возврат из функции ссылки на экземпляр класса
Здравствуйте, прошу помочь в разъяснении не понятной конструкции.Искал в интернете не нашел ничего...

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


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru