Ссылка на неуправляемый проект C ++ в другом неуправляемом проекте C ++ в Visual Studio 2008 - PullRequest
3 голосов
/ 04 января 2010

Я работаю над проектом нейронной сети, который требует от меня работы с C ++. Я работаю с библиотекой Flood Neural Network . Я пытаюсь использовать библиотеку нейронных сетей в неуправляемом проекте C ++, который я разрабатываю. Моя цель - создать экземпляр объекта класса в библиотеке Flood из другого проекта.

В Интернете достаточно документации о том, как ссылаться на неуправляемый проект C ++ из проекта C #, но недостаточно информации о том, как ссылаться на один проект C ++ в другом. Подобно тому, как я делал бы это в C #, я добавил проект Flood в качестве ссылки в моем другом проекте, но я попробовал все виды методов для работы с объектом. Я попытался использовать директиву #include для ссылки на файл заголовка, но это дает мне ошибки, утверждая, что мне нужно реализовать методы, объявленные в файле заголовка.

Как добавить ссылку в неуправляемый C ++ и работать с объектами класса?

Ответы [ 2 ]

2 голосов
/ 04 января 2010

Да. Вам нужно сделать две вещи:

  1. #include соответствующие файлы заголовков, как вы сделали
  2. Добавить ссылку (Visual C ++ поддерживает два типа: «зависимости», которые устарели и больше не должны использоваться, и «ссылки», которые являются правильными). Используйте их для ссылки на другой проект, который должен быть частью вашего решения. Это значит, что в этом случае вы должны иметь возможность СОСТАВИТЬ другой проект.

В качестве альтернативы, если у вас нет исходного кода или вы не хотите компилировать сторонний код по какой-либо другой причине, вы также можете ссылаться на скомпилированный двоичный файл. Лучший способ сделать это - pragma comment lib. Если это то, что вам нужно, пожалуйста, прокомментируйте, и я отредактирую свой ответ.

1 голос
/ 04 января 2010

Глядя на предоставленный файл vcproj, распределение потока действительно странно и создает исполняемый файл.

Таким образом, поддерживаемый способ использовать Flood в вашем собственном проекте не через два проекта (являющихся вашим приложением и проектом "libflood") - это просто добавление всех файлов flopp cpp в ваш собственный проект и его сборка.

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