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

Создать для класса виртуальный метод, возвращающий уникальный идентификатор класса

30.11.2015, 19:32. Показов 2362. Ответов 2
Метки нет (Все метки)

В курсаче по ООП сказано создать для класса виртуальный метод,возвращающий уникальный идентификатор класса. Вопрос в том, что это такое?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.11.2015, 19:32
Ответы с готовыми решениями:

Метод класса возвращающий итератор
Не могу заставить метод класса возвращать итератор, помогите понять почему компилятор не разрешает...

Шаблон класса двусвязного списка, метод, возвращающий указатель
Пишу шаблон класса двусвязного списка. Всё в хедере. В классе присутствует структура item. Пытаюсь...

Виртуальный метод класса, возвращаемый значения разных типов
Доброго времени суток. Появилась необходимость в создании виртуального метода, который позволял бы...

Не получается создать метод для вывода вектора из класса
Здраствуйте, 2 день смотрю уроки по классам, но все бестолку. У меня имеется класс pricelist в...

2
2548 / 1207 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
30.11.2015, 19:39 2
Лучший ответ Сообщение было отмечено mariacatz как решение

Решение

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
#include <iostream>
#include <vector>
using namespace std;
 
enum class eUnitType
{
    ARCHER,
    WARRIOR,
};
 
class Unit
{
private:
    eUnitType m_type;
 
protected:
    void setType(const eUnitType type)
    {
        m_type = type;
    }
public:
    eUnitType getType() const
    {
        return m_type;
    }
    virtual ~Unit() = 0
    {
 
    }
};
 
 
class Archer : public Unit
{
public:
    Archer()
    {
        setType(eUnitType::ARCHER);
    }
};
 
class Warrior : public Unit
{
public:
    Warrior()
    {
        setType(eUnitType::WARRIOR);
    }
};
int main()
{
    std::vector<Unit*> arr;
 
    arr.push_back(new Archer());
    arr.push_back(new Warrior());
 
    for(const auto& it : arr)
    {
        cout << (int)it->getType() << endl;
    }
    
 
}
0
7167 / 6142 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
30.11.2015, 19:39 3
Ну пронумеруй все классы и возвращай номер. Или имена используй.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.11.2015, 19:39
Помогаю со студенческими работами здесь

Создать конструктор копий и оператор присваивания для класса компьютер и члена класса марка
Создать конструктор копий и оператор присваивания для класса компьютер и члена класса марка. ...

Создать метод класса для заполнения массива случайными числами
При запуске, обьекты «а» заполняются постоянно одними и теми числами. Как это исправить? ...

Создать метод для класса, который бы вводил через консоль строку
Здравствуйте! В задании мне нужно создать метод для класса, который бы вводил через консоль...

Как передать в метод класса Menu указатель на метод дочернего класса?
Как передать в метод базового класса указатель на метод дочернего: class Menu() { protected: ...


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

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

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