Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
AltPeople
10 / 10 / 1
Регистрация: 25.09.2008
Сообщений: 73
#1

Матрица произвольных размеров - C++

03.06.2009, 11:34. Просмотров 607. Ответов 3
Метки нет (Все метки)

решил создать класс, который формировать двумерный массив произвольного размера
создаю класс - файл "ttt.h":
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#ifndef TTT_H
#define TTT_H
class ttt
{
public:
       ttt(int=3,int=3);
       void setArea();//присвоение эл-там массива нулевые значения
       void printI();
private:
       const int i;
       const int j;
       int area [j][i];
};
#endif
далее идет описание - файл "ttt.срр"
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream.h>
#include "ttt.h"
ttt::ttt(int ii,int jj):i(ii),j(jj)
{      
}
void setArea()
{
   for (int k=0;k<j;k++)
   {
       for(int h=0;h<i;h++)
       {
               area[k][h]=0;               
       }     
   }
     
}
void ttt::printI()
{
     cout<<i<<j;     
}
ну и исполнительный - файл "main"
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream.h>
#include "ttt.h"
    
int main ()
{
    ttt s(5,6);
    s.setArea();
       
    return 0;
}
выдает ошибки:
1. In file included from main.cpp invalid use of non-static data member `ttt::j' from this location.
2. In file included from main.cpp invalid use of non-static data member `ttt::i' from this location.

каким образом нужно объявить константы i и j, чтобы их можно было использовать в качестве размера массива, и вообще возможно ли это?
среда DEV-C++
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2009, 11:34
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Матрица произвольных размеров (C++):

Суммирование массивов произвольных размеров - C++
Всем привет! У меня проблема с написанием программы. Задача этой программы: - Запрос от пользователя размера массива - Ввод...

Построить шаблон класса матрица произвольных элементов - C++
Всем доброго вечера! Программу я написала, но использовать созданный шаблон класса для различных типов элементов не получается... Помогите...

дана квадратичная матрица z[n][n]. составить программу, которая если матрица симметричная(транспонированная матрица равна исходной), сделает ее не сим - C++
помогите пожалуйста. условие: дана квадратичная матрица z. составить программу, которая если матрица симметричная(транспонированная...

Разность произвольных чисел - C++
Как решить разность произвольных чисел? Длинная арифметика. Есть пример &quot;Сумма двух положительных чисел&quot; её надо переделать в разность,...

Имеется четыре произвольных числа: А, B, C, D - C++
помогите решить Имеется четыре произвольных числа: А, B, C, D. ЭВМ должна ответить на вопрос: Правда ли что среди чисел точно одно меньше...

Имеется массив А из N произвольных чисел. - C++
1)Имеется массив А из N произвольных чисел. Используя, операторы цикла составить программу. а)Найти номер последнего отрицательного...

3
Patch
2277 / 492 / 11
Регистрация: 01.04.2009
Сообщений: 2,181
03.06.2009, 11:41 #2
Цитата Сообщение от AltPeople Посмотреть сообщение
вообще возможно ли это
а нужно ли это?
0
rangerx
1941 / 1550 / 141
Регистрация: 31.05.2009
Сообщений: 2,913
03.06.2009, 17:35 #3
каким образом нужно объявить константы i и j, чтобы их можно было использовать в качестве размера массива, и вообще возможно ли это?
И нет, и да. В вашем случае нет . Т.е. достаточно объявить константы как static и инициализировать их. Но в данном случае это не поможет. Динамическое выделение памяти, конструктор копий, и перегрузка операторов вам в помощь.
1
XuTPbIu_MuHTAu
Эксперт С++
2234 / 749 / 10
Регистрация: 27.05.2008
Сообщений: 1,498
03.06.2009, 17:51 #4
Тут переменные по своей семантике не константные. Константные- это те,значение которых известно на этапе компиляции и сборки,фактически.В данном случае,учитывая конструктор - они не не константы. К тому же,выделение памяти из кучи практичнее.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.06.2009, 17:51
Привет! Вот еще темы с ответами:

Имеется четыре произвольных числа: А, B, C, D. - C++
Пожалуйста, очень Вас прошу, помогите мне мне очень срочно нужно сдать эти программы!!! Я буду очень признательна ПОЖАЛУЙСТА, УМОЛЯЮ...

Имеется четыре произвольных числа: А, B, C, D. - C++
1)Имеется четыре произвольных числа: А, B, C, D. ЭВМ должна ответить на вопрос: Правда ли что все числа больше нуля и меньше 7? Ответ...

Найти сумму десяти произвольных чисел - C++
Найти сумму десяти произвольных чисел. Результат отправить в переменную S

Определение наибольшего из десяти произвольных чисел - C++
Составить программу определения наибольшего из десяти произвольных чисел.


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

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

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