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

Реализация отношений между классами is-a, has-a, uses-a в С++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Решение СЛАУ методом Гаусса, индексы http://www.cyberforum.ru/cpp-beginners/thread522218.html
Собственно программа решает слау методом гаусса. Как найти индексы главного элемента на второй итерации? #include <iostream.h> #include <math.h> void main(void) { int N,i,j,k,l,m,ypos; cout...
C++ Как изменить вид и положение курсора в консоли? ВСем доброго времени суток есть несколько вопрос по работе с курсором в консоли 1) как сделать что курсор принял вид мигающего квадратика а не палочки 2) как задать цвет курсора 3) как по нажатию... http://www.cyberforum.ru/cpp-beginners/thread522213.html
шаблон функции C++
подсчитать среднее арифметическое элементов расположенных выше главной диагонали. Непойму где ошибка. #include<iostream> using namespace std; template<typename X> void printArray(char *name, X...
алгоритмы сортировки массивов C++
помогите пожалуйста решить задачу на с++... Если у массива А(50) есть элемент, равный квадрату последнего элемента, то все элементы, следующие за ним, упорядочить по возрастанию методом вставки.
C++ Инвертировать все биты в старшем байте числа. http://www.cyberforum.ru/cpp-beginners/thread522197.html
Инвертировать все биты в старшем байте числа.
C++ Написать программу на С++ Разработать интерфейс для работы с файлами, позволяющий читать и писать в произвольную позицию в файле, и выполнить его реализацию. Предусмотреть события, оповещающие об ошибках. подробнее

Показать сообщение отдельно
ForEveR
В астрале
Эксперт С++
7979 / 4738 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
19.03.2012, 17:12
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#include <iostream>
#include <string>
 
// IS-A
 
class Person
{
public:
   Person(const std::string& nm):name(nm)
   {
   }
   const std::string getName() const
   {
      return name;
   }
private:
   std::string name;
};
 
class Derived : public Person
{
public:
   Derived(const std::string& nm, const std::string& tmp):
   Person(nm), temp(tmp)
   {
   }
   const std::string getTemp() const
   {
      return temp;
   }
private:
   std::string temp;
};
 
void test_is_a()
{
   Derived der("Vasya", "Temp");
   std::cout << der.getName() << " - " << der.getTemp() << std::endl;
}
 
// HAS-A
 
class Engine
{
public:
   const std::string getName() const
   {
      return "Engine";
   }
};
 
class Car
{
public:
   const std::string getEngineName() const
   {
      return eng.getName();
   }
private:
   Engine eng;
};
 
void test_has_a()
{
   Car car;
   std::cout << car.getEngineName() << std::endl;
}
 
// USES-A
 
class Pilot
{
public:
   const std::string getName() const
   {
      return "Pilot";
   }
};
 
class Plane
{
public:
   Plane(const Pilot& p):pil(p)
   {
   }
   const std::string getPilotName() const
   {
      return pil.getName();
   }
private:
   const Pilot& pil;
};
 
void test_uses_a()
{
   Pilot pil;
   Plane pl(pil);
   std::cout << pl.getPilotName() << std::endl;
}
 
int main()
{
   test_is_a();
   test_has_a();
   test_uses_a();
}
http://liveworkspace.org/code/1d2088d6f363f404c9d32dc06449236e
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru