0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 39
1

Композиция классов

25.05.2013, 17:28. Показов 735. Ответов 0
Метки нет (Все метки)

прога рабит, композицию помогите сделать
room.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once
class ROOM
{
float SR_;
public:
    ROOM(void);
    ROOM(float );
    ~ROOM(void);
 
    
    void set_PLOSHADR(float );
    
 
    float get_PLOSHADR();
    
    void pechat ();
 
};
room.cpp
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
#include "StdAfx.h"
#include "room.h"
ROOM::ROOM(void)
{
}
 
ROOM::ROOM(float SR)
{
    SR_=SR;
}
 
ROOM::~ROOM(void)
{
}
 
void ROOM::set_PLOSHADR(float SR)
{
SR_=SR;
}
 
float ROOM::get_PLOSHADR()
{
    return SR_;
}
 
void ROOM::pechat()
{
    printf("Площадь комнаты: %f\n",SR_);
}
flat.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once
#include "room.h"
class FLAT:
    public ROOM
{
    float SK_;
    int FLOOR_;
public:
    FLAT(void);
    FLAT(float ,float , int );
    ~FLAT(void);
 
    void set_PLOSHADK(float );
    void set_ETAZH(int );
 
    float get_PLOSHADK();
    int get_ETAZHK();
};

flat.cpp
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
#include "StdAfx.h"
#include "flat.h"
FLAT::FLAT(void)
{
}
FLAT::FLAT(float SR, float SK, int FLOOR):ROOM(SR)
{
    SK_=SK;
    FLOOR_=FLOOR;
}
FLAT::~FLAT(void)
{
}
 
void FLAT::set_PLOSHADK(float SK)
{
SK_=SK;
}
void FLAT::set_ETAZH(int FLOOR)
{
FLOOR_=FLOOR;
}
 
float FLAT::get_PLOSHADK()
{
return SK_;
}
int FLAT::get_ETAZHK()
{
return FLOOR_;
}

flatcity.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once
#include "flat.h"
class FLATCITY:
    public FLAT
{
char* GOROD_;
 
public:
FLATCITY(void);
FLATCITY(float SR, float SK, int FLOOR, char* GOROD_);
~FLATCITY(void);
 
void set_PLACE(char* );
 
char* get_PLACE();
 
void pechat();
};



flatcity.cpp
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
#include "StdAfx.h"
#include "flatcity.h"
#include <stdlib.h> 
#include "string.h"
 
FLATCITY::FLATCITY(void)
{
}
FLATCITY::FLATCITY(float SR, float SK, int FLOOR, char* GOROD):FLAT(SR, SK, FLOOR)
{
GOROD_=(char*)malloc(sizeof(char*)*(strlen(GOROD)+1));
strcpy(GOROD_,GOROD);
}
FLATCITY::~FLATCITY()
{
free(GOROD_);
}
void FLATCITY::set_PLACE(char* GOROD)
{
free(GOROD_);
GOROD_=(char*)malloc(sizeof(char*)*(strlen(GOROD)+1));
strcpy(GOROD_,GOROD);
}
char* FLATCITY::get_PLACE()
{
    return GOROD_;
}
void FLATCITY::pechat()
{
printf("Площадь комнаты: %.2f\n Площадь кухни: %.2f\n Этаж: %d\n Город: %s\n", ROOM::get_PLOSHADR(), FLAT::get_PLOSHADK(), FLAT::get_ETAZHK(), get_PLACE());
}
Программа с использованием данных классов:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "StdAfx.h"
#include <windows.h>
#include "flat.h"
#include "flatcity.h"
#include "room.h"
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
FLATCITY A(25, 20, 5, "Москва");
A.pechat();
A.set_PLOSHADR(40);
A.set_PLACE("Питер");
printf("Площадь комнаты через get метод после её изменения на 40: %.2f\nГород, где эта квартира через get метод после его изменения на Питер: %s\n ",A.get_PLOSHADR(), A.get_PLACE());
return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.05.2013, 17:28
Ответы с готовыми решениями:

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

Композиция классов
Доброго времени суток! Есть задание. Реализовать класс ModelWindow , добавив поле курсора....

Композиция классов и объектов
Написать программу, в которой создаются и уничтожаются объекты, определенного пользователем типа....

Иерархия и композиция классов
Написать программу на с++ Совсем не поняла &gt;_&lt;

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.05.2013, 17:28

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

Композиция и иерархия классов
Всем доброго времени суток. Никак не могу исправить ошибку, компилятор ругается на итератор (iter)...

Композиция классов и объектов данных
Номиналы украинских гривен могут иметь значение 1, 2, 5, 10, 20, 50, 100, 500, 1000, 5000. Копейки...

Композиция классов. Не могу разобраться
С сентября начал изучение C++, но с нашими темпами не успеваю всё освоить. Собственно само задание:...


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

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

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