.NET之编程技术笔记(一)基础编译

来源:互联网 发布:c语言华氏度 编辑:程序博客网 时间:2024/06/03 23:21

1.1 编译

讲一下代码保存为hello.cs:

using System;
class Hello
{
static void Main(){
Console.WriteLine("Hello World!");
}
}

用csc编译一下: csc hello.cs  即生成hello.exe

csc.exe在C:\Windows\Microsoft.NET\Framework的不同Framework版本下。

可以将一个类编译成dll库形式:

csc /t:library tools.cs

在引用该命名空间的类中这样编译:

csc /r:tools.dll hello.cs


1.2 类型系统

结构类型与类类型极为相似,也表示一个数据成员和函数成员的结构。但它们的区别在于结构类型是值类型,不需要在堆上分配。结构类型不支持自定义的继承,所有的结构类型都隐式继承object。

委托类型表示对特定参数列表和返回类型的方法的引用,与其他语言的函数指针很相似,但委托是面向对象且类型安全的

空属类型和数组类型无需声明即可使用。对于每一个非空属类型T,都有一个空属类型T?,它保存了一个额外值null。

c#的统一类型系统可以让任何类型的值都可以被当作是一个对象。引用类型的值就是object类型的值,而值类型的值则是通过装箱和拆箱操作来转换成对象的。值类型的值被转换成对象时(装箱),一个object实例(也称为“箱子”)被分配出来保存这个值。如果一个对象引用被转换成值类型时(拆箱),首先检查引用对象是不是该值类型的箱子,如果是,箱子里的值就会被复制出来。

原创粉丝点击