如果是符合公共语言规范,那你就用.net把你用c++写的代码编译成dll文件。
那你就可以在C#中直接引用这个dll。

解决方案 »

  1.   

    只可以通过*.dll方式引用吗?
    还有没有别的方式?
      

  2.   

    to ajqc(失眠无神闷坐中) 
    单独写成一个文件,就是一个*.h文件,
    这样可以在c#的工程用吗?
    因为c#工程中不能include "*.h"
    怎么用?
      

  3.   

    另外还可以写成组件的方式给c#引用!
    可是:
    *.dll和组件的方式,在vc或vb中都可以已这样的方式互相引用,
    为什么说.net有跨语言互用性?
    而vc,vb没有这样说?
      

  4.   

    用一个托管扩展的Wrapper类把非托管扩展的DLL中的类wrap起来。C#的代码访问Wrapper类。msdn上的例子:
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcsample/html/vcsamMCppWrapperSampleDemonstratesWrappingCDLLWithManagedExtensions.asp
      

  5.   

    可以将你的cpp做成COM+
    C#可以直接调用COM的
      

  6.   

    1:如果是托管的c++代码,可以编译成assembly,using就可以用了。
    2:写成com组件,.net提供了一个工具可以将他转成assembly,再来就可以用了。
    c#是不可能和c++源代码级重用的。