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

Полиморфизм своими словами - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ c++ http://www.cyberforum.ru/cpp-beginners/thread37851.html
Что значит строки v_arr(arr, N); w_arr(arr, N);
C++ Вывести на экран "уникальные" элементы массива 1 Есть массив, вывести на экран все элементы, которые встречаются хотя-бы дважды 2 Вывести на экран "уникальные" элементы. ЗЫ использовать только <iostream> http://www.cyberforum.ru/cpp-beginners/thread37848.html
C++ Проблемы с sort()
В #include "stdafx.h" #include <iostream> #include <ctime> #include <algorithm> using namespace std; void out(int *a,int n,int k); void vin(int *a,int n); void copt(int *a,int n,int k);...
C++ Генератор случайных чисел в интервале (0;10)
Как сгенерировать случайную последовательность целых чисел лежащих в интервале то 0 до 10? Т.е. как задать границы для генерации ПСЧ.
C++ ListView C++ http://www.cyberforum.ru/cpp-beginners/thread37823.html
Пожалуйста!! Очень надо! С помощью ListView написать программу игры в шашки. Заранее спасибо
C++ найти ошибку Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых лежит в интервале , а потом все остальные. # include <stdio.h> # include <conio.h> # include... подробнее

Показать сообщение отдельно
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
06.05.2013, 14:14
Цитата Сообщение от programina Посмотреть сообщение
Зачем?
Затем чтобы можно было использовать разнотипные объекты, реализующие интерфейс. В Вашем, например, случае нельзя SUN и EARTH добавить в единый контейнер (не прибегая к каким-нибудь хакам с void*).
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
#include <iostream>
 
using namespace std;
 
 
class sphere
{
public:
    virtual int getRadius() = 0;
};
 
class Sun : public sphere
{
public:
    int getRadius() { return 1000; }
};
 
class Earth : public sphere
{
public:
    int getRadius() { return 1; }
};
 
int main() {
 
    
    sphere* sp[] = { new Sun(), new Earth() };
    
    for( int i=0; i<sizeof(sp)/sizeof(*sp); ++i )
    {
        cout << sp[i]->getRadius() << endl;
        
    }
    return 0;
}
https://ideone.com/Ah4jfV

Пример кривоват, но суть показывает.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru