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

Теория плагинов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ ./massdown: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by ./massdown) http://www.cyberforum.ru/cpp/thread98890.html
всем хай! собираю свою программу на новом железе х86_64 долго не получалось скомпилить. при линковке получал вот такое сообщение: relocation R_X86_64_32 against `a local symbol' я так понял, это из-за того что часть библиотек от которых зависит цель, были собраны как 32-ух битные. но с этим вроде все нормально, пересобрал все либы - скомпилировалось. теперь при запуске получаю такое...
C++ Как понять этот константный указатель? В общем, имеется класс Cat. Объект класса - SimpleCat. И имеется функция с константым указателем: const SimpleCat* const FunctionTwo(const SimpleCat* const theCat) Что обозначают все эти const? Насколько я понимаю: 1. Константный указатель. 2. Может ссылаться только на FunctionTwo 3. Ничего не изменяет в объекте. 4. Ничего не делает с объектом theCat. http://www.cyberforum.ru/cpp/thread82125.html
C++ Перехват и подмена вызываемых функций
Здравствуйте. Нужно подменить вызов таких функций как open(), lstat(), stat(), read(), write(), mkdir(), chdir(), getcwd() для определенного процесса. Интересует мнение других. Как бы вы реализовали эту задачу. Спасибо!
 

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
17299 / 5547 / 347
Регистрация: 30.03.2009
Сообщений: 15,101
Записей в блоге: 26
13.03.2011, 18:47     Теория плагинов
Цитата Сообщение от niXman Посмотреть сообщение
но я НЕ хочу использовать такой принцип. почему что-то должно меня ограничивать?!
По определению. Есть функция qsort, одним из параметров которой является указатель на функцию с конкретно заданным прототипом. И ты обязан придерживаться этого интерфейса независимо от желаний "не хочу что-то ограничивать".

Цитата Сообщение от niXman Посмотреть сообщение
все. невижу противоречий и нелогичности
А я вижу. То, что ты хочешь - НЕ является плагином. А является частью программы, оформленной в виде динамической библиотеки. Эту часть ты можешь вообще отдельным классом реализовать без каких-либо наследований от базового класса.

Я могу реализовать динамическую библиотеку, экспортировать в ней функцию trampampam, в которую передаются два int'а, а она будет возвращать их сумму. Далее могу для вычисления суммы двух чисел подключать эту библиотеку через dlopen и работать через ней. Могу назвать эту библиотеку "плагином". И всё будет работать. За исключением того, что это НЕ будет являться плагином
 
Текущее время: 02:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru