结构是一种值类型,通常用来封装一组相关的变量,结构中可以包含构造函数、常量、字段、方法、属性、运算符、事件和嵌套类型等,但是如果同时包含上述几个类型则应该考虑使用类。
结构的特点:
·结构式值类型
·向方法传递结构时,结构是通过传值方式传递的,而不是作为引用传递的。
·结构的实例化可以不适用new运算符
·结构可以声明构造函数,但他们必须带参数
·一个结构不能从另一个结构或类继承
·结构可以实现接口
·在结构中初始化实例字段是错误的。
聊了些特点,下面举个小例子大家参考下:
using System;
using System.Collections.Generic;
using
System.Text;
namespace _
{
class
Program
{
public struct Rect
//定义一个矩形结构
{
public
double width;
//矩形的宽
public double height;
//矩形的高
///
<summary>
///
构造函数,初始化矩形的宽和高
///
</summary>
/// <param
name="x">矩形的宽</param>
/// <param
name="y">矩形的高</param>
public Rect(double x, double
y)
{
width =
x;
height =
y;
}
///
<summary>
/// 计算矩形面积
///
</summary>
///
<returns>矩形面积</returns>
public double
Area()
{
return width *
height;
}
public double CArea(double
r)
{
return 3.14 * r *
r;
}
}
static void Main(string[]
args)
{
Rect
rect1;
//实例化矩形结构
rect1.width = 5;
//为矩形宽赋值
rect1.height = 3;
//为矩形高赋值
Console.WriteLine("矩形面积为:" +
rect1.Area());
Rect rect2 = new Rect(6, 4);
//使用构造函数实例化矩形结构
Console.WriteLine("矩形面积为:" +
rect2.Area());
Console.WriteLine("圆的面积为:" +
rect2.CArea(10));
Console.ReadLine();
}
}
}
原文:http://www.cnblogs.com/C-CHERS/p/3667270.html