作者s87144 (...)
看板C_Sharp
标题Re: [问题] C#与VB的整合
时间Thu Jun 18 07:49:07 2009
有办法用一样的方法,把unmanaged C++的DLL档案汇入给C#使用吗?
我写了一个简单的unmanaged C++程式
namespace mySpace{
class myClass {
public:
double PI;
double TwoPI() { return PI*2.0; }
myClass() { PI = 3.1415926; }
};
}
这样C#没办法加入Test.dll。
我在class myClass前面加入public,
改成public class myClass之後,
在属性里面改成/clr,
就可以在C#里面加入Test.dll档案。
之後,建立一个C#程式,并加入这个DLL档案Test.dll
using System;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
mySpace.myClass testCPPClass = new mySpace.myClass();
Console.WriteLine(testCPPClass.PI.ToString());
}
}
}
这样会出现
'mySpace.myClass' 不包含 'PI' 的定义,也找不到扩充方法 'PI' 来接受型别
'mySpace.myClass' 的第一个引数 (您是否遗漏 using 指示词或组件参考?)
请问,有办法让C#使用unmanaged C++的程式吗?
因为有一些旧的library想让C#使用,想以变化最少的方式,来加入到C#里,谢谢。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.117.162.129