![]() |
|
Другие темы раздела | |
C++ XML ошибка формата
https://www.cyberforum.ru/ cpp/ thread123873.html не знаю куда еще написать, браузер при открытии xml пишет XML Parsing Error: not well-formed Location:... |
Правильное чтение из файла! C++ Помогите пожалуйста, уже опробовал все((( Суть задачи такая, есть файл data.txt в нем есть числа выглядит он так: 200,100,100, 100, 300 Ниже представлен код программы, которая просит ввести... |
C++ Функции! Приношу свои извинения за этот глупый вопрос, я начинающий программист и сейчас прохожу урок Функции, но не могу понять, очень не понятно описывается, подскажите что такое функции и для чего они... |
C++ Любопытственная ошибка В программе глобально объявлен буфер для передачи сообщений по каналу: char MsgBuf; Далее при формировани сообщения: MsgBuf="go"; Следующая ошибка: error C2440: '=' : cannot convert from... https://www.cyberforum.ru/ cpp/ thread123262.html |
C++ Перевод из Паскаля в СИ.
https://www.cyberforum.ru/ cpp/ thread123250.html Доброго времени суток. Помогите перевести программу из паскаля в СИ. 1 программа: Program oblast; uses crt; var a,b,z:real; c:boolean; begin clrscr; write('Введите a='); readln(a); |
Динамические потоки c обрабатываемой памятью C++ Нужна ваша помощь. #include "WinThread.h" LPVOID hf1,hf2,hf3; iXml* Tr; AnsiString str; std::vector<GraphObj *> *GNO; typedef struct Params |
C++ из паскаля в си_1 program kontrolnaya; uses crt; var a,b,z,r:real; begin clrscr; write('a=');readln(a); write('b=');readln(b); write('r=');readln(r); if (((a-5)*(a-5)+b*b<r*r) and not((a+5)*(a+5)+b*b<r*r)) or... |
C++ из паскаля в си_2 пожалуйста, помогите переписать на с++(((((((((((((( program kontr; uses crt; const nmax=100; type mas=array of integer; procedure Vvod(var v:mas;var x:byte); var i:byte; begin https://www.cyberforum.ru/ cpp/ thread122999.html |
C++ В каком SDK находятся библиотечные файлы Urlmon.lib winmm.lib
https://www.cyberforum.ru/ cpp/ thread122899.html В каком SDK находятся библиотечные файлы Urlmon.lib winmm.lib? Я предполагал что в Direct SDK(у меня DirectX SDK 2006), однако там не нашел. Может кто подскажет где находятся и какую... |
C++ Транслятор с паскаля на С Салют! Можете привести самый простой пример транслятора с паскаля на С, заранее спасибо https://www.cyberforum.ru/ cpp/ thread122831.html |
22 / 22 / 2
Регистрация: 06.12.2010
Сообщений: 125
|
||||||||||||||||||||||||||
12.03.2011, 19:48 | 0 | |||||||||||||||||||||||||
Теория плагинов12.03.2011, 19:48. Просмотров 27224. Ответов 40
Метки (Все метки)
Ответ
эхх... чем пояснять и доказывать, вот вам пример:
Я тут обнаружила потребность народа в некотором примере насчёт использования динамических библиотек. Вот, вытащила из своего проекта куски, относящиеся к загрузке и вызовам. Смысл примера такой: есть приложение, которое грузит (динамически) библиотеки с некоторым интерфейсом (IInterface). Все загружаемые библиотеки наследуют некоторое дефолтное поведение от базового класса (Base). Если библиотека не реализует какой-то метод интерфейса, то будет вызван базовый метод. Это чтобы не переписывать в каждой библиотеке одни и те же действия. Пример загружаемой библиотеки - Derived. Я привела флаги компиляции и сборки для разных систем (я собираю под линюксом с gcc и icc и под вендой с mingw). Вроде ничего не забыла, но возможно, что некоторые флаги не нужны для данного примера (я их поместила в квадратные скобки [...]). Просто у меня проект большой и там много чего ещё кроме этого, поэтому там могли оказаться не относящиеся к данной подзадаче параметры. Да, стандартные флаги для библиотек типа -ldl я сюда не выписывала. Выписаны только специфические параметры. Какие плюсы? Собственно, независимость библиотек от основного кода. Для добавления функционала достаточно перекомпилять загружаемые модули. Базовый функционал класса Base можно менять, не пересобирая библиотеки, которые его используют. Надеюсь, что в принципе понятно. Общий файл интерфейса Interface.h
gcc,icc: CXXFLAGS: -fPIC LDFLAGS: -nodefaultlibs -shared mingw: для венды установить дефайн__DLL (для экспорта) CXXFLAGS: LDFLAGS: -enable-auto-import [-enable-runtime-pseudo-reloc] -Wl,--kill-at Заголовок базового класса Base.h
Инструкции по сборке библиотеки Derived: gcc,icc: CXXFLAGS: -fPIC [-enable-runtime-pseudo-reloc] LDFLAGS: -nodefaultlibs -shared -lBase mingw: для венды установить дефайн __DLL (для экспорта) CXXFLAGS: LDFLAGS: -enable-auto-import [-Wl,--allow-multiple-definition] Заголовок файла основной динамически загружаемой библиотеки Derived.h
gcc,icc: CXXFLAGS: -fPIC LDFLAGS: mingw: CXXFLAGS: LDFLAGS: -enable-auto-import [-enable-runtime-pseudo-reloc] [-Wl,--allow-multiple-definition] -Wl,--kill-at Пример загрузки/выгрузки библиотеки Derived и использования класса (вызов метода init):
меня давно просили и вот количество просьб превысило порог моей лени и я написала своеобразный "отчёт о проделанной работе". перекопав море документации и наступив на кучу граблей, я всё-таки решила свою задачу. не знаю, подойдёт-не подойдёт, но мне кажется, что эти именно то самое, о чём спрашивал niXman или, во всяком случае, очень близкая к этому задача. да, кстати: в С++ классы экспортировать можно. только есть некоторые ограничения. но их можно аккуратненько обойти ![]() Вернуться к обсуждению: Теория плагинов
1
|
|
12.03.2011, 19:48 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь. Как видео с камеры отобразить в браузере без использования сторонних плагинов? Реализовать систему плагинов (модулей), каждый из которых должен работать в отдельном потоке Взаимодействие плагинов с ядром Установка плагинов cppunit + ecut в Eclipse |
|