Компилировать код C в Visual C ++ DLL? - PullRequest
1 голос
/ 23 декабря 2009

Можно ли скомпилировать код C в DLL Visual C ++? Я смотрю на использование некоторого кода на C в проекте .Net и пытаюсь определить, является ли это вообще вариантом.

Спасибо, Бекки

Ответы [ 2 ]

2 голосов
/ 23 декабря 2009

да. Если вы хотите избавиться от искажения имени , используйте "extern "C" { /*...*/ } construct.

Также см. FAQ: Как смешивать C и C ++

1 голос
/ 23 декабря 2009

Учитывая, что C ++ в значительной степени обратно совместим с C, вы должны иметь возможность перекомпилировать код с использованием компилятора C ++, если в коде не используются некоторые функции C99. Однако имейте в виду, что C ++ / CLI не является стандартным C ++, поэтому могут возникнуть дополнительные проблемы.

Как сказал aJ, если вы хотите избежать искажения имени, вам придется «выйти за пределы C» символов.

Еще один способ сделать это - оставить библиотеку C в качестве стандартного нативного кода и написать для нее тонкий слой C ++ / CLI. Затем откройте слой C ++ / CLI для вашего приложения .NET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...