Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
MS24
11 / 11 / 2
Регистрация: 22.02.2012
Сообщений: 115
Завершенные тесты: 1
1

DLL и Lib на разных языках

18.08.2015, 10:18. Просмотров 1153. Ответов 6
Метки нет (Все метки)

Доброе время суток.
На разных языках можно создавать dll и lib библиотеки. Т.е я могу написать например библиотеку на C++ и написать ее на C#. Вопрос, как мне можно использовать библиотеку написанную на одном языке в другом?
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.08.2015, 10:18
Ответы с готовыми решениями:

Как в VS 2015 устранить ошибку LNK 1104 cannot open file 'fltkd.lib wsock32.lib comct132.lib fltkjpegd.lib'?
как устранить ошибку LNK 1104 в visual studio community 2015? пункта C/C++ в properties нету ...

Linker error msvcprtd.lib(msvcp100d.dll) error lnk2005 already defined libcpmtd.lib
Господа, забрал из VSS солюшен (из 5 проектов) для VS2010 и стал его собирать. Увлекательный...

Время сортировки на разных языках
Есть алгоритм сортировки слиянием Подскажите, почему сортировка на C++, происходит гораздо дольше,...

Вывод строки в консоль на разных языках
Вчера начал изучать С++; Ещё толком не разобрался, но ставить ";" в конце каждой строки уже...

Использование нейросети fann на разных языках
Добрый день, коллеги! Задача: Создать систему, работы нейросети и БД. (выделил тему распознания...

6
castaway
Эксперт С++
4938 / 3043 / 455
Регистрация: 10.11.2010
Сообщений: 11,120
Записей в блоге: 10
Завершенные тесты: 1
18.08.2015, 10:47 2
Цитата Сообщение от MS24 Посмотреть сообщение
как мне можно использовать библиотеку написанную на одном языке в другом?
Так же, как если бы они были написаны на одном языке.
0
MS24
11 / 11 / 2
Регистрация: 22.02.2012
Сообщений: 115
Завершенные тесты: 1
18.08.2015, 10:49  [ТС] 3
Цитата Сообщение от castaway Посмотреть сообщение
Так же, как если бы они были написаны на одном языке.
Ну т.е есть наверное ряд каких -то правил, как мне известно нельзя в бибилиотеках использовать классы? А кто обеспечивает тогда совместимость этих библиотек?
0
castaway
Эксперт С++
4938 / 3043 / 455
Регистрация: 10.11.2010
Сообщений: 11,120
Записей в блоге: 10
Завершенные тесты: 1
18.08.2015, 11:05 4
Цитата Сообщение от MS24 Посмотреть сообщение
А кто обеспечивает тогда совместимость этих библиотек?
Тот кто их пишет.

Цитата Сообщение от MS24 Посмотреть сообщение
как мне известно нельзя в бибилиотеках использовать классы?
Можно использовать классы, но экспортировать их из одного языка в другой вряд ли получится (не знаком с C#, могу ошибаться).
0
MS24
11 / 11 / 2
Регистрация: 22.02.2012
Сообщений: 115
Завершенные тесты: 1
18.08.2015, 11:07  [ТС] 5
Цитата Сообщение от castaway Посмотреть сообщение
Тот кто их пишет.
Я имею ввиду, может быть есть какая - то технология? Или это делает винда?

Цитата Сообщение от castaway Посмотреть сообщение
Для этого есть ABI.
Т.е это соглашение предусматривает как нужно писать библиотеки, что бы они были доступны для других программ на других языках? А как определить, могу я использовать dll на своем языке или нет, например если она написанна не используя эти соглашения, например с классами.
0
castaway
Эксперт С++
4938 / 3043 / 455
Регистрация: 10.11.2010
Сообщений: 11,120
Записей в блоге: 10
Завершенные тесты: 1
18.08.2015, 11:10 6
Цитата Сообщение от MS24 Посмотреть сообщение
Я имею ввиду, может быть есть какая - то технология? Или это делает винда?
Для этого есть ABI.
1
castaway
Эксперт С++
4938 / 3043 / 455
Регистрация: 10.11.2010
Сообщений: 11,120
Записей в блоге: 10
Завершенные тесты: 1
18.08.2015, 11:56 7
Лучший ответ Сообщение было отмечено MS24 как решение

Решение

Эти соглашения скорее нужны компилятору, а не пользователю.
Если оба компилятора C# и C++ предоставляют одни и те же ABI для DLL, тогда эти DLL должны быть совместимы с программами, скомпилированными этими компиляторами.
0
18.08.2015, 11:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.08.2015, 11:56

Объединение модулей написанных на разных языках
Не знал в каком разделе создать тему, потому создал здесь. Я сейчас учу C/C++, мои друзья же...

Dll и Lib файлы
Создаю корректный хедер и модуль, компилирую в dll. Перемещаю .h, .dll и .lib в папку с...

Файлы *.lib и *.dll
Привет всем! Вот решил начать писать проект и задался вопросом: как использовать *.lib и *.dll...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru