由于开发需要。在C#平台中去调用C++编写代码(代码很长很复杂几万行)中的两个类Geometry,GeoMesh
其中一个类的类名是是class Geometry继承C++里面其他的一个类;C++代码有源代码,可以修改,但是太长了不可能全重写我对C++和C#混合编程很陌生。不知道坛里面的高手推荐一种最为合适的方法,尽量提供多点信息吧。这样回答我看这个帖子不仅对我也会对后来者有用的。非常感谢

解决方案 »

  1.   


    。Net里面调用C++的类是十分吃力的,用C++把现有的类代码封装成标准stdcall API形式,然后在C#里面调用,还是很简单的。另外也可以用VS。Net编程,它允许你调用。Net的同时也可以调用C++类库。
      

  2.   

    "。Net里面调用C++的类是十分吃力的,用C++把现有的类代码封装成标准stdcall API形式,然后在C#里面调用,还是很简单的。",这种办法最简单,最直接,说白了,就是平台调用,互操作!给个互操作的例子:C++:
    int CVR_Scan (int ScanType,int ScanMode, int iDirect);C#:
    [DllImport("CVR100Z562SDK.dll", EntryPoint = "CVR_Scan", CharSet = CharSet.Ansi,CallingConvention =CallingConvention.Cdecl)]
      public static extern int CVR_Scan(int ScanType, int ScanMode, int iDirect);