Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 2093|Ответ: 7

[Источник] .NET 8 вызывает функции в библиотеке C++ Dynamic Link

[Скопировать ссылку]
Опубликовано 2024-12-8 18:36:17 | | | |
Требования: Некоторые библиотеки алгоритмов разработаны на C++, и версии на C# нет. Как использовать C# для вызова функций на C++?

Сначала создайте новый заголовочный файл demo.h и определите функцию добавления, код выглядит следующим образом:

Создайте новый файл demo.cpp с следующим кодом:

Скачайте инструмент mingw64 по адресу:Вход по гиперссылке виден.

Распакуйте в папку D:\mingw64, временно добавьте папку mingw64/bin в переменную окружения в окне cmd и используйте следующую команду:

Вызовите команду g++ для компиляции исходного кода в динамическую библиотеку связей с помощью следующей команды:

Как показано ниже:



Создаются два файла: demo.dll и demo.lib.

Создать новый проект для консоли .NET 8

После ссылки на пакет CppSharp файл проекта .csproj звучит так:

Создайте новый объект SampleLibrary для реализации интерфейса ILibrary, код выглядит следующим образом:

от .h, . lib генерирует .cs-файл, который может быть вызван с помощью C# из функции на C++, код выглядит следующим образом:

Как показано ниже:



Попробуйте вызвать метод добавления внутри demo.dll, как показано на изображении ниже:



Полный код:


Скачать исходный код:

Туристы, если вы хотите увидеть скрытое содержание этого поста, пожалуйстаОтвет


Ссылка:
Вход по гиперссылке виден.
Вход по гиперссылке виден.





Предыдущий:Используйте mkcert для генерации самоподписанного сертификата доменного имени
Следующий:Скачайте компиляцию исходного кода FastDeploy для Windows
Опубликовано 9.12.2024 13:26:40 |
Учитесь учиться
Опубликовано 9.12.2024 16:32:11 |
Идите смотреть
 Хозяин| Опубликовано 2025-4-23 10:51:21 |
Скачание стандартной библиотеки C++:Вход по гиперссылке виден.
 Хозяин| Опубликовано 23.04.2025 16:49:21 |
 Хозяин| Опубликовано 2025-6-17 17:19:08 |

Выполните с помощью контейнера Docker с помощью следующей команды:

Ссылка:Вход по гиперссылке виден.
 Хозяин| Опубликовано 2025-6-18 09:43:12 |
Вход по гиперссылке виден.
Вход по гиперссылке виден.(Скопируйте Program.cs в свой проект и выполните его после компиляции, генерация тестов очень проста и неполная)

 Хозяин| Опубликовано 2025-6-18 14:05:22 |
SWIG (Simplified Wrapper and Interface Generator) — это инструмент с открытым исходным кодом, используемый для преобразования кода на C/C++ в интерфейсный код для нескольких высокоуровневых языков программирования, поддерживающий такие языки, как Python, Java, Ruby, C# и др., и часто применяется для кросс-языковой разработки или повышения производительности скриптовых языков.

Официальный сайт:Вход по гиперссылке виден.
Источник:Вход по гиперссылке виден.
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com