结构是C#程序员用来定义自己的值类型的最普遍的机制。结构比枚举更强大,因为它提供函数、字段、构造函数、操作符和访问控制。结构成员的缺省访问权限是private(在C++中是public)。当你定义结构的成员名时,不要忘了对公有成员使用PascalCase规则,而对非公有成员使用camelCase规则。
结构类的声明中虽然可以使用结尾分号,但建议你不要使用,这只不过是为了照顾C++程序员的习惯。
值的产生
• 一个结构类的变量存在于栈(stack)中
字段不是被预先赋值的
字段只有被赋值后才能读
使用点操作符来访问成员
下面的例子假设Pair是一结构,它有两公有整数类成员X,Y
static void Main()
{
Pair p;
Console.Write(p.X); //错误
...
}
static void Main()
{
Pair p;
p.X = 0;
Console.Write(p.X); //正确
...
}
结构类的变量存在于栈中。在上面的例子中,虽然声明了一个叫p的Pair类结构变量,但实际上只是声明两个局部变量p.X和p.Y的一种简写形式。
上面例子中的第一段程序的Console.Write试图使用p.X的值,但它是错误的,因为p.X没有被赋初值。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。