Visual Studio 2008中C#项目中的C ++项目引用

时间:2010-07-02 23:42:11

标签: c# c++ visual-studio

是否可以在C#项目中引用C ++项目?我已经尝试在c#项目中添加一个引用到那个C ++但是我收到一个错误,上面写着“无法添加引用”

3 个答案:

答案 0 :(得分:6)

您无法直接引用本机DLL。您只能在为CLI编译它(目标.NET CLR)或构建COM组件(在这种情况下VS自动构建一个互操作DLL)。否则,你不得不写一个包装DLL。

答案 1 :(得分:2)

如果您的C ++项目是本机(标准C ++)项目,那么没有。如果它是托管项目,您可以添加对它的引用。

对于本机代码,您需要使用P/Invoke来访问C ++ DLL中的函数。

答案 2 :(得分:0)

查看this网页。这是一篇关于将C,C ++,C#和Lisp代码与简短示例混合在一起的非常好的文章。不幸的是C ++ - >当您使用托管C ++时,C#主要是可能的。 简短示例(from earlier mentioned webpage),展示了如何从C#调用C ++管理的Adder类:

using System;
using System.Collections.Generic;
using System.Text;

namespace Dllcaller
{
    class Program
    {
        static void Main(string[] args)
        {
            Adder a = new Adder();
            Console.WriteLine(a.add(1, 7));
            while (true) ;
        }
    }
}