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

Создание класса - C++

Восстановить пароль Регистрация
 
4aynik
0 / 0 / 0
Регистрация: 17.08.2009
Сообщений: 161
20.05.2010, 14:21     Создание класса #1
Написать класс, который содержит защищённые данные х, у беззнакового целого типа. Для считывания этих данных написать общедоступные член-функции get_x и get_y. Для изменения х, у - общедоступные член-функции set_x и set_y. В последних двух функциях производить проверку, чтобы задаваемые значения не превосходили величин max_x и max_y, где max_x и max_y - макроопределения, равные 80 и 40 соответственно.
Продемонстрировать использование созданого класса.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.05.2010, 14:21     Создание класса
Посмотрите здесь:

C++ Создание класса
Создание класса/ C++
Создание класса C++
создание класса C++
Создание класса C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
oxotnik
 Аватар для oxotnik
1584 / 1061 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
20.05.2010, 14:21     Создание класса #2
и в чем сложность?
4aynik
0 / 0 / 0
Регистрация: 17.08.2009
Сообщений: 161
20.05.2010, 14:27  [ТС]     Создание класса #3
Не рублю в C++, точнее в классах
oxotnik
 Аватар для oxotnik
1584 / 1061 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
20.05.2010, 14:30     Создание класса #4
в любом справочнике/учебнике/методичке это есть... стоит открыть раздел "Классы" и передрать почти один в один
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
20.05.2010, 14:44     Создание класса #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;
 
#define max_x 80
#define max_y 40
 
class CInt {
private:
unsigned int x;
unsigned int y;
 
public:
CInt(): x(0), y(0){}
 
 
inline int get_x() const { return x; }
inline int get_y() const { return y; }
 
 
inline int set_x(unsigned int x_t){ 
if(x_t>max_x)return 0;  
x = x_t;
return 1;
}
 
inline int set_y(unsigned int y_t){ 
if(y_t>max_y)return 0;  
y = y_t;
return 1;
}
 
 
};
 
 
 
int main(){
CInt obj;
 
if(!obj.set_x(50))cout<<"Error set_x\n"; 
if(!obj.set_x(90))cout<<"Error set_x\n";    
cout<<"X: "<<obj.get_x()<<endl;
 
if(!obj.set_y(30))cout<<"Error set_y\n"; 
if(!obj.set_y(50))cout<<"Error set_y\n"; 
cout<<"Y: "<<obj.get_y()<<endl; 
 
return 0;
}
fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
20.05.2010, 15:20     Создание класса #6
Цитата Сообщение от Genius Ignat Посмотреть сообщение
C
1
2
#define max_x 80
#define max_y 40
Genius Ignat, зачем DEFINE'ить???
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
20.05.2010, 15:31     Создание класса #7
где max_x и max_y - макроопределения
4aynik
0 / 0 / 0
Регистрация: 17.08.2009
Сообщений: 161
20.05.2010, 15:34  [ТС]     Создание класса #8
А не помните, как пишется функция чтения данных, введённых с клавы?
oxotnik
 Аватар для oxotnik
1584 / 1061 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
20.05.2010, 15:35     Создание класса #9
std::cin
fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
20.05.2010, 15:39     Создание класса #10
Цитата Сообщение от 4aynik Посмотреть сообщение
А не помните, как пишется функция чтения данных, введённых с клавы?
Ты имеешь в виду перегрузка оператора ввода?
4aynik
0 / 0 / 0
Регистрация: 17.08.2009
Сообщений: 161
20.05.2010, 15:44  [ТС]     Создание класса #11
Цитата Сообщение от fasked Посмотреть сообщение
Ты имеешь в виду перегрузка оператора ввода?
Например:
cout <<"Введите число S="<<;

(синтаксис с ошибкой наверное)

вот он выводит это, я с клавы ввожу число и как его считать в прогу, грубо говоря
fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
20.05.2010, 15:51     Создание класса #12
Так тебе надо это для твоего класса или нет?
4aynik
0 / 0 / 0
Регистрация: 17.08.2009
Сообщений: 161
20.05.2010, 15:58  [ТС]     Создание класса #13
C++
1
2
3
4
5
6
7
if(!obj.set_x(50))cout<<"Error set_x\n";
if(!obj.set_x(90))cout<<"Error set_x\n";
cout<<"X: "<<obj.get_x()<<endl;
 
if(!obj.set_y(30))cout<<"Error set_y\n";
if(!obj.set_y(50))cout<<"Error set_y\n";
cout<<"Y: "<<obj.get_y()<<endl;
ты числа вшил в прогу, хочу сделать возможность их произвольного задания с клавы...
edd
36 / 36 / 0
Регистрация: 13.05.2010
Сообщений: 81
20.05.2010, 16:05     Создание класса #14
Цитата Сообщение от Genius Ignat Посмотреть сообщение
где max_x и max_y - макроопределения
а const int max_x=40 не подойдет?
fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
20.05.2010, 16:12     Создание класса #15
Цитата Сообщение от 4aynik Посмотреть сообщение
ты числа вшил в прогу, хочу сделать возможность их произвольного задания с клавы...
C++
1
2
3
4
5
6
7
8
   int x = 0, y = 0;
   cout << "введите х: "; cin >> x;
   cout << "введите у: "; cin >> y;
 
   if(!obj.set_x(x))cout<<"Error set_x\n"; 
   if(!obj.set_x(y))cout<<"Error set_x\n";        
   cout<<"X: "<<obj.get_x()<<endl;
   cout<<"Y: "<<obj.get_y()<<endl;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.05.2010, 16:20     Создание класса
Еще ссылки по теме:

создание класса C++
Создание экземпляр класса из другого класса C++
C++ Создание экземпляра класса до определения класса

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

Или воспользуйтесь поиском по форуму:
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
20.05.2010, 16:20     Создание класса #16
А еще, логичней класс было бы назвать CPoint, я чет поспешил.
Yandex
Объявления
20.05.2010, 16:20     Создание класса
Ответ Создать тему
Опции темы

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