none
Eigene Bibliotheken für .Net-Programme mit 2-dimensionalen Arrays RRS feed

  • Frage

  • Kann man eine funktionierende Klasse z.B. für die Invertierung von Matrizen oder auch eine noch einfachere Klasse meinetwegen eine zur Matrizenaddition in eine Bibliothek für .Net-Programme aufnehmen, so daß dies dann funktioniert?  Bei mir gibt es immer mindestens eine Fehlermeldung,wenn ich eine Matrix an eine Bibliothek  in Visual C++ 2008 übergeben (double* Zeiger=Matrizenbibl::inv(B);), dort z.B. invertieren oder anderweitig verwenden und als Ergebnis wieder eine Matrix z.B. mit Hilfe von return &A[0][0] ins Hauptprogramm übergeben will. 
    Montag, 31. Mai 2010 22:23

Antworten

Alle Antworten

  • Das ist möglich.
    Am Besten ist es Du schreibst eine Wrapper Klasse in C++/CLI. Diese
    nimmt die .NET Datentypen auf, vollführt die entsprechende Umwandlung
    Berechnungen und übergibt die Daten dann zurück an die Managed Welt.
     
    Zeiger direkt aus der unmanaged Welt in die managed Welt zu übergeben
    ist oft nicht möglich, oder bedarf besonderer Beachtung. Wenn Du
    &A[0][0] zurück gibst so ist dies vermutlich ein Zeiger...
     

    Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de
    Dienstag, 1. Juni 2010 05:49
    Moderator
  • Hallo Martin,

    vielen Dank für Deine Antwort.! In dem Handbuch Visual C++ 2008 von Dirk Louis, das ich zur Verfügung habe,  finde ich nichts über Wrapper Klassen. Gibt es irgendwo im Internet ein einfaches Beispiel, wo ein 2-dimensionales Array an eine Bibliothek für .Net-Programme übergeben und hernach wieder eine Matrix zurückgegeben wurde? 

    MfG

    dolina1958

     

    • Bearbeitet dolina1958 Donnerstag, 3. Juni 2010 20:38
    Mittwoch, 2. Juni 2010 13:38
  • Das Buch behandelt kein C++/CLI.

    http://www.voidnish.com/Articles/ShowArticle.aspx?code=cppcliarrays

    Ansonsten lies Dich mal durch die Seite, damit Du die Unterschiede verstehst:
    http://www.voidnish.com/Articles.aspx

    C++/CLI ist kein C++!



    Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de
    Mittwoch, 2. Juni 2010 13:52
    Moderator