Автор | Сообщение |
|
| |
Пост N: 20
Зарегистрирован: 13.12.12
|
|
Отправлено: 12.03.13 12:10. Заголовок: Подскажите, как использовать классы С++ в Harbour
Вчера наткнулся на свежее обновление IBPP (от 17.10.2012). Это "C++ client interface for Firebird" (цитата с сайта). Интуитивно чувствую, что этот набор классов можно использовать с Harbour. Самостоятельно разобраться не могу - не хватает ни знаний, ни опыта. Помогите, люди добрые, кто чем может :).
|
|
|
Ответов - 9
[только новые]
|
|
|
| moderator
|
Пост N: 568
Зарегистрирован: 06.07.06
|
|
Отправлено: 12.03.13 14:15. Заголовок: Процедура, примерно,..
Процедура, примерно, такая: 1) написать на С++ функции - "обертки" для этих классов, чтобы вызывать их из С кода, при этом функции эти надо объявлять как extern "С" ( чтобы обеспечить порядок вызова/возврата функций как в С ); 2) написать на С функции, объявленные как HB_FUNC(), связывающие те "обертки" с кодом на Харборе.
|
|
|
|
| |
Пост N: 21
Зарегистрирован: 13.12.12
|
|
Отправлено: 12.03.13 14:27. Заголовок: alkresin пишет: Про..
alkresin пишет: цитата: | Процедура, примерно, такая: |
| Спасибо за ответ. Технологию понял. К сожалению, мне это не по силам - не та квалификация :(. А было так заманчиво ...
|
|
|
|
| |
Пост N: 2731
Зарегистрирован: 17.05.05
|
|
Отправлено: 12.03.13 14:39. Заголовок: Самоделкин Попробуй..
Самоделкин Попробуй дернуть Сыроежку , но не факт что он захочет помочь.
|
|
|
|
| |
Пост N: 24
Зарегистрирован: 13.12.12
|
|
Отправлено: 12.03.13 15:06. Заголовок: А как его "дерну..
А как его "дернуть"? На форуме его нет с июля, в профиле контактной инфы нет.
|
|
|
|
| |
Пост N: 2732
Зарегистрирован: 17.05.05
|
|
Отправлено: 12.03.13 15:09. Заголовок: Самоделкин пишет: А..
|
|
|
|
| |
Пост N: 25
Зарегистрирован: 13.12.12
|
|
Отправлено: 12.03.13 16:47. Заголовок: Постучался. Ждем-с....
Постучался. Ждем-с...
|
|
|
|
| |
Пост N: 26
Зарегистрирован: 13.12.12
|
|
Отправлено: 18.03.13 21:50. Заголовок: Выдержка из ответа С..
Выдержка из ответа Сыроежки: цитата: | Что касается меня, то к сожалению я не знаком с Firebird, поэтому вряд ли могу быть полезным. Могу лишь обратить ваше внимание, что в Harbour есть средства создания классов, поэтому вполне возможно переписать с C++ то, что для вас представляеет интерес, в рамках синтаксических конструкций Harbour. То есть имеется два подхода. Первый - это попытаться "обернуть" C++ код в функции C, как было указано первоначально. Но это не всегда возможно. Есть ограничения, например, на шаблонные функции и классы. Второй - это перевести код C++ в код Harbour, используя возможности языка Harbour и его средства создания классов. |
| В-о-о-о-т... Уважаемые гуру! Может быть, кто-нибудь из вас возьмется за реализацию второго (см.выше) пути? А? Ведь в итоге все получат прямой доступ к Firebird из Harbour! По ссылке в первом посте доступны исходные коды набора классов. Я, к сожалению, не профессиональный программист - так, кое-какие поделки для себя и коллег делаю. Это, увы, не мой уровень.
|
|
|
|
| |
Пост N: 2794
Зарегистрирован: 17.05.05
|
|
Отправлено: 18.03.13 22:09. Заголовок: Самоделкин пишет: В..
Самоделкин пишет: цитата: | Ведь в итоге все получат прямой доступ к Firebird из Harbour |
| Возможно стоит глянуть то что уже есть в Harbour harbour\contrib\sddfb harbour\contrib\hbfbird harbour\extras\rddado я честно говоря не сильно в это вникал так как не надо.
|
|
|
|
| |
Пост N: 27
Зарегистрирован: 13.12.12
|
|
Отправлено: 18.03.13 22:14. Заголовок: Dima пишет: Возможн..
Dima пишет: цитата: | Возможно стоит глянуть то что уже есть в Harbour harbour\contrib\sddfb harbour\contrib\hbfbird harbour\extras\rddado |
| hbfbird я смотрел. Насколько я понял, там не все реализовано. По поводу rddado - честно говоря, уже не помню, что там не устроило. А вот sddfb я как-то пропустил. Посмотрю, спасибо.
|
|
|
|