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

Множественное наследование - когда оно действительно нужно? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сортировка книг по убыванию года изнания http://www.cyberforum.ru/cpp-beginners/thread1237140.html
2) Написать программу сортировки книг в массиве структур по убыванию года издания
C++ Скопировать одну структуру в другую 1) Написать программу копирования одной структуры (с информацией о книге) в другую http://www.cyberforum.ru/cpp-beginners/thread1237139.html
C++ Получить данные о службах Windows с возможностью управления ими
Всем привет! я новичок в программировании. Подскажите получить данные о службе, сколько берет оперативной памяти, запущена или нет. И возможность запустить ее или перезагрузить.
Создание VPN сети, RAS API C++
Здравствуйте, я создал небольшой чат, основанный на сокетах. Чтобы клиент подключился к серверу с другого ПК требуется VPN. Хотелось бы попробовать написать клиент для подключения к VPN сети, а еще лучше и сервер VPN к этому всему. Проблема в том, что не знаю с чего начать. Краем уха слышал про RAS API, однако толком разобраться не смог. С чего начать? Посоветуйте пожалуйста или киньте пару...
C++ Созданный объект Array<char> удаляется, как только метод convert завершается http://www.cyberforum.ru/cpp-beginners/thread1237009.html
Есть простенькая оболочка над массивом Array<T>: template<typename T> class Array { private: T* data; public: const unsigned int length; Array(unsigned int length) : length(length) {
C++ Объяснить строку объявления массива Ньюанс int* array = new int; на С/C++ Пришлость мне недавно C# код в почти голый C(C++) переписывать. Как-то прощелкал и след. выражение C#: int TransposeMatrix = new int; автоматом "перевел" так (неправильно): int *TransposeMatrix = int TType; :-| подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
02.08.2014, 09:31     Множественное наследование - когда оно действительно нужно?
relationer, множественное наследование наделяет объект свойсвами сразу нескольких сущностей иногда это полезно, иногда приводит к странным поведениям объекта. В целом если итоговый класс не планируется расширять в дальнейшем то множественное наследование как минимум сократит число виртуальных методов и облегчит взаимоействие объекта с разными участками кода.

Не по теме:

Цитата Сообщение от relationer Посмотреть сообщение
но мне всегда казалось, что это можно выстроить гораздо красивее и логичней, совершенно не используя множественное наследование.
- неправильно тебе казалось



Цитата Сообщение от relationer Посмотреть сообщение
Прошу привести пару примеров из реальной жизни, когда данная возможность действительно необходима.
- пожалуйста
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>
using namespace std;
 
class cWnd
{
protected:
    bool   bEnable;
public:
    cWnd() : bEnable(1) {}
    void Enable(){bEnable = true;}
    void Disable(){bEnable = false;}
    bool IsEnable(){
        return bEnable;
    }
};
 
class cRect
{
public:
    int xmin;
    int xmax;
    int ymin;
    int ymax;
    cRect(){
        xmin = 0;
        xmax = 0;
        ymin = 0;
        ymax = 0;
    }
    bool PtInRect(int x, int y)
    {
        bool bInRect = false;
        if(xmin < x && x < xmax)
        if(ymin < y && y < ymax)
            bInRect  = true;
        return bInRect;
    }
};
 
class cControl : public cWnd, public cRect
{
    public:
    cControl() {
         bEnable = true;
    }
    void place(int xmin, int ymin, int xmax, int ymax){
        cRect::xmin = xmin;
        cRect::ymin = ymin;
        cRect::xmax = xmax;
        cRect::ymin = ymax;
    }
};
 
 
int main()
{
    cControl edit;
    edit.place(25, 36, 45, 73);
    cout<<(edit.PtInRect(5, 5) ? "yes" : "no")<<endl;
    cout<<(edit.IsEnable() ? "yes" : "no")<<endl;
    cin.get();
    return 0;
}
http://codepad.org/QlciSpw0
 
Текущее время: 21:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru