簡體   English   中英

在C#程序中使用C / C ++數據結構

[英]Using a C/C++ data structure in a C# program

我有一個超高性能的C / C ++數據結構( 請參見此處! ),我想在我的C#程序中訪問和使用它。

想象一下C / C ++數據結構有一個公共API( getadddelete等)。
如何在C#中以高性能方式多次調用這些方法?

PS在您批評我對“ C / C ++”一詞的使用之前,...
在我看來,C / C ++與C C ++編程語言不同。 我不知道C ++,而是對C的擴展,它使用一些C ++構造,並且可以使用C ++編譯器進行編譯!

如果性能對您很重要,那么您應該避免越過托管/非托管邊界“很多次”。 C#和C ++都可以是高性能語言,但是互操作性能成本並不令人滿意。

我建議您編寫一個C庫(只要方法是外部C,就可以用C ++構造實現),然后使用P / Invoke從C#代碼中調用它。 該庫可以支持您的高性能數據結構,並將一些有用的信息返回給C#端。

您可以使用管道。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM