这几天刚开始看c#,其namespace部分困住了我一会,经过多处查找资料,终于弄明白,现将经验整理如下:
比如我在 namespace N1 里建一个类A,里面有几个方法,
然后在 ns2.cs里引用N1,并且调用其中的方法。
简单代码如下:
// ns1.cs
using System;
namespace N1
{
public class A
{
public A()
{
Console.WriteLine("namespaceN1.class A.write");
}
public void func1()
{
Console.WriteLine("namespaceN1.class A.do()");
}
public static void Main()
{
Console.WriteLine("namespaceN1.class Main()");
}
}
}
// ns2.cs
using System;
using N1;
public class B
{
public static void Main()
{
A A1=new A();
A1.func1();
}
}
编译和运行过程如下:
(1)先将ns1.cs输出为ns1.dll
csc /t:library ns1.cs
在源文件目录得到ns1.dll
(2)编译ns2.cs
csc /r:ns1.dll ns2.cs
在源文件目录得到ns2.exe
(3)运行ns
ns2
执行ns2.exe得结果
体会:(1) namespace N1所在的文件名跟N1没关系;
(2) namespace N1里面可以有Main()函数,也可以没有,没影响;