Вниз
Скачать: CL | DM;

C++ в Delphi   Найти похожие ветки 

← →
ArtemESC   (2005-08-25 14:34) [0]

Можно ли к Delphi проекту добавить модулб C++? Если
да то как?


← →
Reindeer Moss Eater ©   (2005-08-25 14:38) [1]

Project-> Add to Project->Browse

Что мы видим в фильтрах расширений файла?


← →
Digitman ©   (2005-08-25 14:43) [2]


> Можно ли


нельзя.

НЕТ там, в "си / си-пласах/шарпах/прочей си-дребедени" никаких "модулей", так что и добавлять как бы нечего.


← →
Defunct ©   (2005-08-25 21:43) [3]

> Digitman

а obj модулем назвать нельзя?


← →
palva ©   (2005-08-25 22:59) [4]

Надо написать модуль на паскале (unit), но вместо реализации функций подключить объектный модуль {$I <имя файла.obj>} Объектный модуль нужно откомпилировать из исходников на C/C++ борландовским компилятором bcc32. Получившийся unit компилируется обычным делфи компилятором (включается в проект). Я опустил много важных подробностей, но общая схема такая.


← →
DrPass ©   (2005-08-25 23:18) [5]


> {$I <имя файла.obj>}

{$L <имя файла.obj>}
$I - это для вставки текстовых файлов препроцессором


← →
palva ©   (2005-08-25 23:58) [6]

DrPass ©   (25.08.05 23:18) [5]
Точно!


← →
wicked ©   (2005-08-26 01:19) [7]

замечу, что директивой {$L <имя файла.obj>} практически реально подключить только сишный модуль, ни никак не си++...


← →
Digitman ©   (2005-08-26 09:29) [8]


> Defunct ©   (25.08.05 21:43) [3]
> а obj модулем назвать нельзя?


можно.
но вопрос не о obj, а о якобы модулях с исх.текстами на С++

а если таки obj, то см. [7] - С++-компилятор (от Майкрософт) использует иной результирующий формат obj-файлов, отличный от формата используемого Делфи-линкером, так что подключить obj-модули, полученные в результате компиляции С++ текстов в компилирующей среде от MS, к Делфи-проекту не представляется возможным


← →
palva ©   (2005-08-26 10:06) [9]

> Defunct ©   (25.08.05 21:43) [3]
> а obj модулем назвать нельзя?

Модуль это ведь наверно что-то вроде Unit? Там должна присутствовать в каком-то виде информация из секции interface. В кто время как obj не содержит информации о типах данных и прототипах функций - голые двоичные данные и код. Правда если ухитриться запихнуть в obj дополнительную информацию... да еще так, чтобы ее понимал дельфийский линкер... Ну эти мечты уже осуществлены в механизме COM.


← →
Чапаев ©   (2005-08-26 10:29) [10]

> практически реально подключить только сишный модуль, ни никак не си++...
Неправда Ваша. Просто экспортируемые функции следует объявлять как extern "C", дабы избегнуть name mangling"а. Вроде бы ещё это можно сделать, указав компилятору какой-то ключ...

ЗЫ. Естественно, речь идёт о компиляции борландовским комплятором.


← →
DrPass ©   (2005-08-26 10:58) [11]


> Чапаев ©   (26.08.05 10:29) [10]
> > практически реально подключить только сишный модуль, ни
> никак не си++...
> Неправда Ваша. Просто экспортируемые функции следует объявлять
> как extern "C", дабы избегнуть name mangling"а. Вроде бы
> ещё это можно сделать, указав компилятору какой-то ключ...

Если ты укажешь extern "C", на выходе ты получишь обычный сишный obj :)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.024 c
3-1123125294
Andry
2005-08-04 07:14
2005.09.18
Драйвера BDE


11-1106924318
Aux
2005-01-28 17:58
2005.09.18
Могу предложить зеркало для файлов


3-1123157438
VitaWED
2005-08-04 16:10
2005.09.18
SQL и память


14-1124634179
Yegorchic
2005-08-21 18:22
2005.09.18
Вопрос по в Word у


10-1103101035
Priest
2004-12-15 11:57
2005.09.18
Как отладить COM объекты




   Наверх