用于实现 C++ 的 C++/CLI 解决方法 界面
Micropather 要求用户实现其抽象类“Graph”才能使用该库。 有什么好方法可以从 C++/CLI 执行此操作,以便我可以在 .NET 中使用 Micropather?
实现的方法只有两种:
virtual float LeastCostEstimate( void* stateStart, void* stateEnd ) = 0;
virtual void AdjacentCost( void* state, std::vector< StateCost > *adjacent ) = 0;
到目前为止,我一直在用 gcroot 和 delegates 进行策划,但还没有任何扎实的东西。
Micropather requires users implement their abstract class "Graph" in order to use the library. What's a good way to do this from C++/CLI so I can use Micropather in .NET?
There are only two methods to implement:
virtual float LeastCostEstimate( void* stateStart, void* stateEnd ) = 0;
virtual void AdjacentCost( void* state, std::vector< StateCost > *adjacent ) = 0;
So far I have been scheming with gcroot and delegates, but I don't have anything solid yet.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
只需编写一个继承
Graph
的普通 C++ 类,并使用 gcroot 模板来引用该类中的 CLR 对象。Just write an ordinary C++ class that inherits
Graph
, and use the gcroot template to refer to CLR objects from within that class.