blob: d3ded74c79fd531126cf536581da2106aaab7ae8 (
plain) (
blame)
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
|
#include <iostream>
#include <cstring>
class Command
{
char name;
public:
Command(char name);
char getName() const;
};
Command::Command(char name)
{
this->name = name;
}
char Command::getName() const
{
return name;
}
class CommandList
{
Command** commands;
int commandCount;
public:
CommandList(const char* commands);
~CommandList();
void printAll() const;
};
CommandList::CommandList(const char* commands)
{
commandCount = strlen(commands);
this->commands = new Command*[commandCount];
for (int i = 0; i < commandCount; i++)
{
Command* ptr = new Command(commands[i]);
this->commands[i] = ptr;
}
}
CommandList::~CommandList()
{
for (int i = 0; i < commandCount; i++)
delete commands[i];
delete[] commands;
}
void CommandList::printAll() const
{
for (int i = 0; i < commandCount; i++)
std::cout << commands[i]->getName() << " ";
std::cout << std::endl;
}
int main()
{
CommandList cl("abcdefghijklmnop");
cl.printAll();
}
|