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

Двухмерный массив указателей из элементов объектов класса - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Отбирать отдельные слова из файла http://www.cyberforum.ru/cpp-beginners/thread585707.html
Здравствуйте! Мне нужно из файла, примерно такого вида: Car Author Noname mass 1500 //comment kpp 1.0 0.5 0.2 nodes 1, 50.0, i 2, 40.5, i 3, 30.99, v
C++ Разработка программы для анализа айпи-адресов.способ адресации-классовый Здравствуйте.помогите немножко. Значит нужно данная программа. выводит № узла и № сети. нужна помощь с тем,чтобы еще и класс выводила. Уже всю голову переломал,незнаю чего сделать. Собственно надеюсь на понимание. С уважением anb1s. http://www.cyberforum.ru/cpp-beginners/thread585703.html
C++ модуль dll
как запихнуть функцию #include <stdexcept> #include <stdio.h> #include <math.h> using namespace std; namespace MathFuncs { void MyMathFuncs::Myfunc(double* u,double* al,double* bet,double* t,double* aa,double* bb,double* cc,double* ff ,int l2,int b1, int l1,const int n,double h)
C++ Добавление элемента класса без изменения исходников
Существует выстроенная иерархия классов - родитель и несколько потомков. Родитель в свою очередь наследуется от абстрактного класса. Некий контейнер заполнятся представителями классов потомков, считывая данные из файла. Создание представителей классов происходит с помощью фабрик. Необходимо "добавить" новое поле для каждого класса потомков, не изменяя исходного текста программы. Т.е. в проект...
C++ Матрица http://www.cyberforum.ru/cpp-beginners/thread585670.html
help me please) Дана квадратная матрица А порядка n. Составит программу, которая находит минимальный элемент и все элементы, расположенные в одной строке и в одном столбце с минимальным заменяет на минимальное значение. Учитывать, что значение в массиве не повторяется.
C++ Основная задача Основная задача. Для заданного x нас интересует последовательность: sin(x0), sin(x1), sin(x2), sin(x3),... sin(x299). А точнее, нас интересует «сглаженная» версия этой последовательности – для каждых 30-ти соседних их среднеарифметическое: (sin(x0)+... sin(x29))/30, (sin(x1)+... sin(x30))/30,... (sin(x270)+... sin(x299))/30. Составить программу, которая вычисляет и выводит эту... подробнее

Показать сообщение отдельно
Leeto
 Аватар для Leeto
7 / 7 / 0
Регистрация: 23.12.2011
Сообщений: 372
Записей в блоге: 1
24.05.2012, 19:32     Двухмерный массив указателей из элементов объектов класса
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
//point1.h
#ifndef POINT_H
#define POINT_H
#include <iostream>
 
 
class CIntArray
{
    public: 
 
        CIntArray(); //defualt constructor 
        
        CIntArray ( int kiArraySize,int kjArraySize) 
{
    mipArray = new int (kiArraySize);
    mipArray = new int (kjArraySize);
}
~CIntArray (){
delete [] mipArray;
}
 
void SetAt( int kiIndex, int kjIndex,  double kiValue)
{
    mipArray[kiIndex,kjIndex] = kiValue;
 
}
 
int GetAt (const int kiIndex,const int kjIndex)
{
    return mipArray [kiIndex,kjIndex];
}
 
private:
    int* mipArray;
};
 
 
#endif

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
//main.cpp
#include "Point1.h"
 
#include <iostream>
using namespace std; 
 
int main () { 
    
 
 
     //************ Allocate a two-dimensional array of ints ******************
 
 
 
 
CIntArray** ippArray = new CIntArray*[3];
    for (int i=0; i < 3; ++i)
    {
    ippArray[i] = new CIntArray[2];
    }
 
 
 
    //************ Fill the array ******************
 
    for (int i = 0; i < 3; ++i){
            
                for (int j = 0; j < 2; j++){
        
    cout << "Input the integer #" << i << ": " ;
    double dInputValue;
    cin >>dInputValue;
    ippArray[i][j].SetAt(i,j, dInputValue);
                                                                    }
                                                                }
 
//************OutPut the array******************
 
for (int i = 0 ; i < 3 ; ++i)
    for (int j = 0; j < 2; ++j )
{
    cout << ippArray[i][j].GetAt(i,j) << " ";
}
cout << endl;
 
// ************ Deallocate ******************
        for (int i=0; i< 3; ++i)
    {
        delete [] ippArray[i];
    }
    delete [] ippArray; 
 
 
    system ("pause");
 
    return 0;
}
что то я совсем в синтаксисе запутался помогите, пожалуйста.
Хочется создать двухмерный динамический массив из указателей, т.е. юзая newI() / delete() . Каждый элемент массива это точка с 2мя координатами (х,у). Ну соответственно нужно чтобы нормально выполнялся Allocate-йшен, заполнение массива, аутпут массива и дэалокейшен без утечки памяти (memory leak ).
Заранее огромное спасибо
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru