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

Стоит ли прятать интерфейсные методы внутри класса? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать диспетчер задач http://www.cyberforum.ru/cpp/thread1572279.html
Доброго времени суток форумчане. Помогите с чего начать или может есть ресурс с похожей темой. Дали задание (курсовой) по системному программированию-Разработка диспетчера задач для операционной системы Windows. Требуется реализовать программу, в которой будут отображаться все запущенные на компьютере процессы. Требуется обеспечить возможность завершения процессов, а также смены их приоритетов.
C++ OpenCV 300 не показыват видео с камеры столкнулся со следующей проблемой, скачал opencv300 (VS12) подключил все, PATH не забыл, все заработало, картинки открывает, различные преобразования - без проблем. но как только я пытаюсь подключить камеру начинаются проблемы : (подключал по видео https://www.youtube.com/watch?v=ScAPinibluA) #include "opencv2/opencv.hpp" using namespace cv; int main() { int c; http://www.cyberforum.ru/cpp/thread1571971.html
Вывод строки с символом дельта C++ COM
Подскажите пожалуйста, уже все перпробовал, как можно вывести в ячейку Excel строку "разность <символ дельта>" (символа нет возможности вставить с телефона), выгружаю так: vVarCell = vVarSheet.OlePropertyGet("Cells").OlePropertyGet("Item", 1, 1); vVarCell.OlePropertyGet("Font").OlePropertySet("Name","Times New Roman"); vVarCell.OlePropertyGet("Font").OlePropertySet("Size",12); ...
C++ Вывод и управление пикселем чрез ассемблер
ЗДравствуйте, дали задание переделать из этого кода вывод пикселя и реагирование этого пикселЯ на клавиши-стрелки. Помогите на сколько можно. #include <stdio.h> #include <conio.h> #include <graphics.h> main() { int gdriver,gmode,color; gdriver=0;
C++: IDE, инструментарий SDL_LogCritical в Code::blocks http://www.cyberforum.ru/cpp/thread1571107.html
Недавно установил Code::Block. Далее понадобилось скачать SDL. Скачал SDL ,"установил" после чего решил создать проект и перенести в него все .cpp и .h файлы которые писал на Visual Studio(спросите зачем я это сделал? у меня стоял visual studio community, у него закончился пробный период,пришлось удалить. А скачивать vs express(4-8гб) не получается так как модем с трафиком и скорость маленькая)....
C++ Launcher как в World of tanks Привет всем!) Нужна ваша помощь, хочу написать лончер для игры, как в World of tanks, который будет скачивать клиент игры, и при каждом запуске сверять файлы клиента с файлами сервера. подробнее

Показать сообщение отдельно
rikimaru2013
C++ Game Dev
2380 / 1074 / 235
Регистрация: 30.11.2013
Сообщений: 3,570

Стоит ли прятать интерфейсные методы внутри класса? - C++

06.11.2015, 16:20. Просмотров 293. Ответов 2
Метки (Все метки)

1) Стоит ли прятать интерфейсные методы внутри класса, чтобы обеспечить доступ к интерфейсу интерфейса только с помощью явного приведения указателя на объект к интерфейсному указателю.
C++
1
2
3
4
5
6
7
8
9
10
class Interface
{
public:
    virtual void f() = 0;
}
class Bar : public Interface
{
private:
    virtual void f( ){};
}

2) Сразу же по п.1 возникает проблема:
промолчит если класс перестал реализовывать данный интерфейс
C++
1
2
3
IFoo* ptr = dynamic_cast<Foo*>(m_bar);
if(ptr)
    ptr->canDo();
тут же не даст скомпилить
C++
1
IFoo* ptr = m_bar;
Какой способ предпочитаете вы?

3) стоит ли писать префиксную приставку методам интерфейсса
C++
1
virtual void ICanDraw_draw() = 0;
для обеспечения перекрыания совпадения имён методов разных интерфейсов и читаемость кода.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru