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

программа на массив обьектов - C++

Восстановить пароль Регистрация
 
555shiro
 Аватар для 555shiro
8 / 8 / 1
Регистрация: 01.12.2009
Сообщений: 226
28.05.2010, 12:51     программа на массив обьектов #1
Доброе время суток!
здесь я попытался написать простенькую программу на массив обьектов,но есть ошибки,я вижу пока только одну,не могли бы подсказать как исправить её? (отметил в комментарии)


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream.h>
#include <math.h>
#include <stdio.h>
#include <conio.h>
 
class samp
{
int a,b;
public:
samp(int n,int m){a=n,b=m;}
int get_a(){return a;}
int get_b(){return b;}
};
void main ()
{
samp ob[4]={samp(1,2)};  //  не понимаю,в чем здесь ошибка?
for(int i=0;i<4;i++)
{
cout<<ob[i].get_a()<<" ";
}
getch ();
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
vladislavchick
35 / 35 / 1
Регистрация: 22.05.2010
Сообщений: 107
28.05.2010, 13:55     программа на массив обьектов #2
В том, что так просто не пишут. Пишите так:
samp ob[4] = {{1, 2}, ...};

Добавлено через 29 секунд
Вместо многоточия, естественно, начальные значения подставьте.

Добавлено через 2 минуты
Обязательно подставьте, а то у Вас в цикле определен только 1 из 4х объектов.
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
28.05.2010, 14:29     программа на массив обьектов #3
555shiro, определите ещё один конструктор, без параметров, или заполните массив полностью.
555shiro
 Аватар для 555shiro
8 / 8 / 1
Регистрация: 01.12.2009
Сообщений: 226
28.05.2010, 14:58  [ТС]     программа на массив обьектов #4
я решил ещё больше упростить программу..теперь работает =)

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 <math.h>
#include <stdio.h>
#include <conio.h>
class samp
 {
int a;
public:
samp(int n){a=n;}
int get_a(){return a;}
};
void main ()
{  int i;
samp ob[4]={1,2,3,4};
for(int i=0;i<4;i++)
{
cout<<ob[i].get_a()<<" ";
}
getch ();
}
Добавлено через 8 минут
программа конечно слишком проста..хочется немного усложнить..эта программы выводит только 4 числа которые инициализированы..а как сделать чтобы он например к этим числам прибавлял какое нибудь число..и выводил результат?
вот моя попытка...

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream.h>
#include <math.h>
#include <stdio.h>
#include <conio.h>
class samp
 {
int a;
public:
samp(int n){a=n;}
int get_a(){return a;}
};
void main ()
{  int i,x;
samp ob[4]={1,2,3,4};
for(int i=0;i<4;i++)
 
х=ob[1]+1;               // здесь компилятор ошибку выдает,видимо я совсем глупость какую то слепил
cout<<"x="<<x<<" ";
 
getch ();
}
Sura
 Аватар для Sura
6 / 6 / 0
Регистрация: 23.05.2010
Сообщений: 87
28.05.2010, 15:23     программа на массив обьектов #5
C++
1
2
3
4
5
for(int i=0;i<4;i++)
 {
х=ob[i]+1;               
cout<<"x="<<x<<" ";
}
Я полагаю Вы так хотели сделать?
edd
36 / 36 / 0
Регистрация: 13.05.2010
Сообщений: 81
28.05.2010, 18:34     программа на массив обьектов #6
ob[1] это имя объекта типа (int или char или др) если хочешь что то делать так из него нужно вытягивать данные например : x=ob[1].a+1; (значение перем а и т,д,)
555shiro
 Аватар для 555shiro
8 / 8 / 1
Регистрация: 01.12.2009
Сообщений: 226
28.05.2010, 21:35  [ТС]     программа на массив обьектов #7
попробовал так..всё равно выдаёт ошибку..
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 <math.h>
#include <stdio.h>
#include <conio.h>
class samp
 {
int a;
public:
samp(int n){a=n;}
int get_a(){return a;}
};
void main ()
{  int i,x;
samp ob[4]={1,2,3,4};
for(int i=0;i<4;i++)
{
х=ob[i].a +1;               //  ошибка
cout<<"x="<<x<<" ";  }
getch ();
}
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
28.05.2010, 21:45     программа на массив обьектов #8
Как показал копипаст у тебя в 18 строке русская 'х' затесалась.))
Во вторых член класса a приватный, к нему нельзя напрямую обращаться. Тогда уж x=ob[i].get_a() +1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.05.2010, 21:51     программа на массив обьектов
Еще ссылки по теме:

Динамический массив обьектов в класе C++
Указатель на двухмерный массив обьектов C++
C++ Количество обьектов в файле

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

Или воспользуйтесь поиском по форуму:
555shiro
 Аватар для 555shiro
8 / 8 / 1
Регистрация: 01.12.2009
Сообщений: 226
28.05.2010, 21:51  [ТС]     программа на массив обьектов #9
вот теперь наконец то работает =)))
всем огромное человеческое спасибо!!!
Yandex
Объявления
28.05.2010, 21:51     программа на массив обьектов
Ответ Создать тему
Опции темы

Текущее время: 08:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru