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

Как переместить из стека одного класса в массив другого класса?

28.11.2015, 15:06. Показов 738. Ответов 1
Метки нет (Все метки)

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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
// HW_on.24.11_classStack_SantaClaus.cpp: определяет точку входа для консольного приложения.
//
#include "stdafx.h"
#include <iostream>
#include <stack>
#include <conio.h>
#include <string>
using namespace std;
 
 
class bag_gifts
{   
public:
    string gift;
    
    bag_gifts(){}
    bag_gifts(string _gift)
    {
        gift = _gift;
    }
    string get_gift()   const
    {
        return gift;
    }
    friend ostream&operator << (ostream&stream,bag_gifts& obj)
    {
        stream << obj.gift << endl;
    
        return stream;
    }
};
 
class SantaClaus
{
public:
    stack<bag_gifts> gifts;
    SantaClaus(){}
    
    SantaClaus(string gift)
    {
        gifts.push(gift);
    }
    
    friend ostream& operator << (ostream&stream, SantaClaus& obj)
    {
        stream << obj.gifts.top();
        obj.gifts.pop();
        return stream;
    }
};
 
class Children
{
public:
    string gift;
    enum _behavior {BAD,GOOD} behavior;
    Children(){}
 
    friend ostream& operator << (ostream&stream, Children& obj)
    {
        stream << obj.gift;
        return stream;
    }
};
 
int _tmain(int argc, _TCHAR* argv[])
{
 
    //Подарки и поведение
    bag_gifts b_gift[15];
    SantaClaus Santa;
    Children children[15];
 
    b_gift[0].gift = "Dog";
    
    children[0].behavior = Children::BAD;
 
    b_gift[1].gift = "Cat";
    children[1].behavior = Children::BAD;
 
    b_gift[2].gift = "Crocodile";
    children[2].behavior = Children::GOOD;
 
    b_gift[3].gift = "TV";
    children[3].behavior = Children::BAD;
 
    b_gift[4].gift = "Book";
    children[4].behavior = Children::BAD;
 
    b_gift[5].gift = "Orange";
    children[5].behavior = Children::GOOD;
 
    b_gift[6].gift = "Car";
    children[6].behavior = Children::GOOD;
 
    b_gift[7].gift = "Moto";
    children[7].behavior = Children::BAD;
 
    b_gift[8].gift = "Money";
    children[8].behavior = Children::GOOD;
 
    b_gift[9].gift = "Apple";
    children[9].behavior = Children::GOOD;
 
    b_gift[10].gift = "Banana";
    children[10].behavior = Children::BAD;
 
    b_gift[11].gift = "Table";
    children[11].behavior = Children::BAD;
 
    b_gift[12].gift = "Monitor";
    children[12].behavior = Children::GOOD;
 
    b_gift[13].gift = "Game disk";
    children[13].behavior = Children::GOOD;
 
    b_gift[14].gift = "Telephon";
    children[14].behavior = Children::BAD;
 
 
    //наполнить мешок с подарками
    for (int i = 0;i < 15;i++)
    {
        Santa.gifts.push(b_gift[i]);
    }
 
    //если ребенок вел себя хорошо,выдать ему подарок
    for (int i = 0;i < Santa.gifts.size();i++)
    {
        if (children[i].behavior == Children::GOOD)
        {
            
        }
    }
    
 
 
    
    
 
 
    
    
    
 
    
    
    
 
    _getch();
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.11.2015, 15:06
Ответы с готовыми решениями:

Массив объектов одного класса как поле другого класса
Доброе время суток. Мне тут в универе задали лабу, нужно создать класс полем которого будет массив...

Как связать сигнал одного класса со слотом другого класса, содержащего указатель на объект этого класса?
Подскажите, пожалуйста, как связать сигнал одного класса со слотом другого класса, содержащего...

Можно ли как-то получить из одного класса исходный код другого класса?
Предположим есть два публичных класса. Один находится в одной части проекта, другой где-нибудь в...

Как в случае с Dependency Injection внедрять отдельный экземпляр некоторого класса только лишь для одного другого класса
Здравствуйте, пытаюсь понять как же всё таки правильно использовать Dependency Injection в случае c...

1
Заблокирован
28.11.2015, 16:07 2
Добавлено через 4 минуты
C++
1
2
3
4
struct SantaClaus
{
stack<string> gifts;
};

C++
1
2
3
4
Santa.gifts.push("Dog");
Santa.gifts.push("Cat");
.....................
.....................
Добавлено через 3 минуты
Цитата Сообщение от HeAgEkBaT Посмотреть сообщение
friend ostream& operator << (ostream&stream, SantaClaus& obj)
это нужно писать вне класса

C++
1
2
3
4
5
6
ostream& operator << (ostream&stream, SantaClaus& obj)
{
stream << obj.gifts.top();
obj.gifts.pop();
return stream;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.11.2015, 16:07
Помогаю со студенческими работами здесь

Массив объектов класса как член другого класса
Здравствуйте. У меня тут возникла проблемка #include &quot;main.h&quot; class player { public: ...

Как вызвать из одного класса (для метода типа void) метод типа boolean другого класса?
ребят, только учусь и конечно, вопросов возникает много. ситуация вот в чем. есть массив. я должна...

Из одного класса обратиться к свойству progressBar из другого класса (основного окна)
Привет! :) Помогите пожалуйста нубу (мне). У меня есть два класса. Первый (основной), его код:...

С помощью делегата из одного класса вызвать private метод с другого класса
доброго времени суток. такой вопрос. С применением делегатов и пониманием проблем нет когда...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru