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

Создание полиморфного объекта, зачем создавать указатель на объект базового класса? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Реализовать круговые движения курсором мыши http://www.cyberforum.ru/cpp-beginners/thread1233924.html
Я новичек в с++. Хочу написать простую программу, которая при нажатии на кнопку (которую задам я в программе) мышь начинала делать круговые движения (что-то типа цикла). Можете подсказать функцию, с...
C++ Ошибка доступа на break Здравствуйте! Пишу программу, по сути являющуюся мини базой данных, в которой должна быть возможность сохранить и загрузить базу. Сохранение вроде как работает, но вот с загрузкой проблемы. Если... http://www.cyberforum.ru/cpp-beginners/thread1233918.html
C++ Задать строку без нулевого символа
подскажите как задать строку без нулевого символа? когда пишешь так char str = "hello world" он автоматом добавляется, пробовал даже писать так char str = {'h','e','l'} (ну и т.д.) и все равно...
C++ Помогите найти ошибку: Создать строку символов произвольной длины, заданную диапазоном
/*Задание: Создать строку символов произвольной длины. Ввести с клавиатуры начало и конец диапазона в строке. Записать строку без диапазона(т.е. часть справа и часть слева)*/ #include <iostream>...
C++ Релиз консольной программы с SNMP запросами - найти ошибку в коде http://www.cyberforum.ru/cpp-beginners/thread1233883.html
Привет всем! Я написал программку, которая опрашивает некоторые устройства используя запросы по протоколу SNMP. Программа отлично работает при Start without debugging, но её релизная версия...
C++ Поиск популярного триплета. Конструктивная критика Добрый день. Недавно помогал решать задачу про триплеты, и захотелось услышать критики по своему коду :D. все-таки только учусь, и она я считаю будет полезной. в первую очередь, хотелось бы... подробнее

Показать сообщение отдельно
Psilon
Master of Orion
Эксперт .NET
5902 / 4799 / 634
Регистрация: 10.07.2011
Сообщений: 14,407
Записей в блоге: 5
Завершенные тесты: 4
25.07.2014, 19:10
чтоб можно было общую функцию писать для всех типов (криво, но плюсы для меня немного чужды )
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
#include <iostream>
#include <vector>
 
class A
{
public:
    virtual int GetPay()
    {
        return 10;
    }
};
 
class B : public A
{
    int GetPay()
    {
        return 15;
    }
};
 
class C : public A
{
    int GetPay()
    {
        return 20;
    }
};
 
 
void Foo(std::vector<A*> arr)
{
    int sum = 0;
    for (A *a : arr)
    {
        sum += (*a).GetPay();
    }
    std::cout << "SUM = " << sum << std::endl;
}
 
int main() {
    A* a = new A();
    B* b = new B();
    C* c = new C();
 
    std::vector<A*> vector{ new A(), new B(), new C() };
 
    Foo(vector);
    return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru