Вызов CLP (решатель линейного программирования, написанный на C++) из C# .net в VS2013
Мне нужно вызвать CLP (решатель линейного программирования, написанный на C++) из C# .net (4.0, 4.5) в VS2013.
http://www.coin-or.org/Clp/userguide/clpuserguide.html
У меня есть поиск некоторых ссылок о том, как вызвать C++ lib из C#.
Я нашел возможные варианты:
используйте C# Warpper
Дизайн обёртки класса сам.
http://www.codeproject.com/Articles/19354/Quick-C-CLI-Learn-C-CLI-in-less-than-minutes
https://msdn.microsoft.com/en-us/library/ms235281%28v=vs.120%29.aspx
В CLP слишком много классов, поэтому я стараюсь не писать класс-оболочку для каждого класса. Это может вызвать слишком много ошибок.
Первый вариант не имеет документа на английском языке и содержит ошибки.
Есть ли другие способы вызова CLP из C#?
Спасибо
1 ответ
В качестве третьего варианта у вас есть P / Invoke. Но это беспорядок, с которым вам не следует сталкиваться, если вы не знаете достаточно C++, чтобы использовать C++ для вызова этой библиотеки.
Я не знаю, что именно вы хотите сделать с CLP, но рассматривали ли вы вопрос об использовании других продуктов, которые лучше взаимодействуют с вашим языком выбора? Например, может ли Solver Foundation стать альтернативным выбором?