Помогите написать программу/Visual C++
, за небольшую плату...
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.217.37] |
|
|
Правила раздела
Помогите написать программу/Visual C++
, за небольшую плату...
|
|
|
|
|
Нужна программа для сдачи в университет (3 курс)...
Задание: Нужно разработать: - объекты, поддерживающие множественные интерфейсы (не менее 4-х объектов и 5 интерфейсов (не менее двух функций в каждом интерфейсе)); - собственный API. Реализовать полиморфизм на основе интерфейсов для разработанных объектов. пишите на annaweb1986@rambler.ru Очень нужно! |
|
Сообщ.
#2
,
|
|
|
|
Ну это классическая лабораторная работа, серьёзного университета, где задание крайне расплывчато для стимулирования абстрактного мышления студентов. Грубо говоря задачу надо поставить самому. Тут смысл в том что такую программу сможет сдать нормально только тот кто её написал, потому как преподаватель спросив, что то из кода сразу поймёт что работа куплена. |
|
Сообщ.
#3
,
|
|
|
|
Цитата MaIron @ Ну это классическая лабораторная работа, серьёзного университета, где задание крайне расплывчато для стимулирования абстрактного мышления студентов. Грубо говоря задачу надо поставить самому. Тут смысл в том что такую программу сможет сдать нормально только тот кто её написал, потому как преподаватель спросив, что то из кода сразу поймёт что работа куплена. значит нужна программа с комментариями:) |
|
Сообщ.
#4
,
|
|
|
|
товарищи, я знаю, классы, методы, шаблоны, виртуальные функции, наследование... (много всего), а что это такое
:Цитата Anna @ объекты, поддерживающие множественные интерфейсы Цитата Anna @ полиморфизм на основе интерфейсов |
|
Сообщ.
#5
,
|
|
|
|
Цитата Moneyiac @ а что это такое : я так понимаю, множественное наследование от нескольких абстрактных классов. Цитата Moneyiac @ полиморфизм на основе интерфейсов Приведение указателя на производный класс некому интерфейсу. И работа через этот интерфейс. |
|
Сообщ.
#6
,
|
|
|
|
Цитата byte @ Цитата Moneyiac @ а что это такое : я так понимаю, множественное наследование от нескольких абстрактных классов. Я бы еще дополнил - классов без членов-данных - одни чисто виртуальные функции. |
|
Сообщ.
#7
,
|
|
|
|
Hryak
как я помню абстрактный класс, это тот, который содержит хоть одну абстрактную функцию (aka заглушку). абстрактный метод это метод без тела, один прототип. виртуальные функции по-моему тут не причем ![]() ![]() class A { void func(void)=0; // прототип абстрактного метода aka заглушка }; так а что есть интерфейс? синоним абстрактного класса? или это класс из одних абстрактных функций? тогда если я создам класс производный от нескольких абстрактных классов, реализую в нем тела абстрактных методов, то про него можно будет сказать что он "поддерживает несколько интерфейсов" ?byte Цитата byte @ что-то не совсем понял... приведение чего к чему называется полиморфизмом? и почему это так важно? Приведение указателя на производный класс некому интерфейсу. И работа через этот интерфейс |
|
Сообщ.
#8
,
|
|
|
|
Цитата Moneyiac @ что-то не совсем понял... приведение чего к чему называется полиморфизмом? и почему это так важно? Очивидно полиморфизм в данном контексте понимается как "Приведение указателя на производный класс некому интерфейсу и работа через этот интерфейс без членов-данных с чисто виртуальными функциями, вызов которых зависит от типа входных данных дочернего класса" По этой причине я не стал бы уж так надеятся на чиь-то комментарии в тексте |
|
Сообщ.
#9
,
|
|
|
|
так мне сможет кто-нибудь помочь?!?
|
|
Сообщ.
#10
,
|
|
|
|
Цитата Moneyiac @ так а что есть интерфейс? синоним абстрактного класса? или это класс из одних абстрактных функций? тогда если я создам класс производный от нескольких абстрактных классов, реализую в нем тела абстрактных методов, то про него можно будет сказать что он "поддерживает несколько интерфейсов" ? На все вопросы можно дать утвердительный ответ. Цитата Moneyiac @ что-то не совсем понял... приведение чего к чему называется полиморфизмом? и почему это так важно? ![]() ![]() class interfaceA { public: virtual void DoIt() = 0; }; class interfaceB{ public: virtual void DoIt2() = 0; }; class MyClass : public interfaceA, public interfaceB { public: void DoIt() { cout << "MyClass::DoIt" << endl;}; void DoIt2() { cout << "MyClass::DoIt2" << endl;} }; void func(interfaceA* pA) { pA->DoIt(); }; void func2(interfaceB* pB) { pB->DoIt2(); }; main() { interfaceA* point = new MyClass; func(point); interfaceB* point2 = dynamic_cast<interfaceB*>(point); func2(point2); } |
|
Сообщ.
#11
,
|
|
|
|
Anna
ставлю вопрос ребром 1)Сколько $? 2)Какой город? |
|
Сообщ.
#12
,
|
|
|
|
Цитата Moneyiac @ так а что есть интерфейс? вообще в С++ нет такого понятия, но вообще это структура с набором прототипов функций. В С++ обычно выражается как название класса с префиксом i(I) и списком чисто виртуальных функций. Для множественности не обязательно множественное наследование, можно наследовать и интерфейс от интерфейса. |