Chiama la libreria C ++ in C #

Ho un sacco di librerie scritte in C ++. Voglio chiamare queste librerie da C #, tuttavia, ho incontrato molti problemi. Voglio sapere se c’è un libro o delle linee guida per dirmi come farlo.

Se cerchi google “c ++ c # interop”, troverai tantissime informazioni su questo argomento.

Un paio di link:

http://msdn.microsoft.com/en-us/magazine/cc301501.aspx
http://msdn.microsoft.com/en-us/library/ms235281(VS.80).aspx

Recentemente ho dovuto inserire del codice c ++ in .NET. Sebbene il codice c ++ fosse impacchettato come una DLL, l’interfaccia era troppo ostile per P / Invoke, così ho deciso di scriverlo in c ++ gestito, o C ++ / CLI come è apparentemente noto ora.

Ho trovato questo tutorial molto utile sulla syntax. Non è così facile per gli occhi, ma il contenuto è sembrato piuttosto buono.

Sono un grande fan del libro C ++ / CLI in Action che ha un paio di utili capitoli di esempio online, a quell’indirizzo.

Questa introduzione su CodeProject è un buon punto di partenza.

L’autore di C ++ / CLI in Action ha un numero di articoli su CodeProject, scorrere fino alla sezione C ++ / CLI sul suo indice .

L’ articolo di Wikipedia su P / Invoke ha una serie di motivi per cui potresti non voler utilizzare questo approccio, con il quale concordo:

  • perdita di supporto alla digitazione da parte del compilatore
  • ansible tipo di dati o problemi di allineamento in quanto devi mappare i tipi a mano
  • necessità di bloccare gli oggetti raccolti dalla spazzatura

Il miglior punto di partenza su MSDN è l’ articolo di sintesi .