当前位置: 首页 > news >正文

小米商城的网站建站公司漏沟设计logo免费

小米商城的网站建站,公司漏沟设计logo免费,宣传册设计与制作公司,租号网站怎么做的第11章 结构 11.1 什么是结构 结构是数据类型#xff0c;与类相似#xff0c;都有数据成员和函数成员#xff0c; 重要的区别#xff1a; 类是引用类型#xff0c;结构是值类型。结构是 隐式密封 的#xff0c;不能派生。 // point 结构 struct Point {public int …第11章 结构 11.1 什么是结构 结构是数据类型与类相似都有数据成员和函数成员 重要的区别 类是引用类型结构是值类型。结构是 隐式密封 的不能派生。 // point 结构 struct Point {public int X;public int Y; } class Program {static void Main() {Point first, second, third;first.X 10;first.Y 10;second.X 20;second.Y 20;third.X first.X second.X;third.Y first.Y second.Y;Console.WriteLine($ first: { first.X }, { first.Y });Console.WriteLine($ second: { second.X }, { second.Y });Console.WriteLine($ third: { third.X }, { third.Y });} }11.2 结构是值类型 结构类型变量含有自己的数据 结构类型的变量不能为 null。两个结构变量不能引用同一对象。 class CSimple {public int X;public int Y; }struct Simple {public int X;public int Y; }class Program {static void Main() {// 类的内存 在堆上CSimple cs new CSimple();// 结构的内存 在栈上Simple ss new Simple();// 。。。} }11.3 对结构赋值 对结构赋值就是将一个结构的值 复制给另一个结构。 类赋值后cs2和cs1 指向堆中同一个对象 结构赋值后ss2成员的值和ss1相同 class CSimple { public int X; public int Y; }struct Simple { public int X; public int Y; }class Program {static void Main() {// Class instancesCSimple cs1 new CSimple(), cs2 null;// Struct instancesSimple ss1 new Simple(), ss2 new Simple(); cs1.X ss1.X 5;cs1.Y ss1.Y 10;// assign class/struct instancecs2 cs1;ss2 ss1;} }11.4 构造函数和析构函数 结构可以有实例构造函数和静态构造函数但没有析构函数。 11.4.1 实例构造函数 语言隐式地为每个结构提供一个无参数的构造函数构造函数把每个成员设置为该类型的默认值。 值成员设置为默认值引用成员设置为null。 每个结构都存在预定义的无参构造函数。在 C# 10 之前不能删除或重定义。 在 C# 11 之前结构类型的构造函数必须初始化该类型的所有实例字段。 可以创建其他的有参构造函数。 调用一个构造函数仍需要使用 new 调用构造函数。 struct Simple {public int X;public int Y;// Constructor with parameterspublic Simple(int a, int b) {X a;Y b;} }class Program {static void Main() {// Call implicit constructorSimple s1 new Simple();Simple s2 new Simple(5, 10);Call constructorConsole.WriteLine($ { s1.X},{ s1.Y });Console.WriteLine($ { s2.X},{ s2.Y });} }也可以不使用 new 创建结构实例但是有如下限制 在设置数据成员的值后才能使用该成员。 对所有数据成员赋值后才能调用函数成员。 struct Simple {public int X;public int Y;}class Program {static void Main() {// No constructor callsSimple s1, s2;// Compiler errorNot yet assignedConsole.WriteLine({0},{1}, s1.X, s1.Y)s2.X 5;;s2.Y 10;Console.WriteLine($ { s2.X},{ s2.Y });} }11.4.2 静态构造函数 与类相似结构的静态构造函数 创建并初始化静态数据成员不能引用实例成员。 遵从与类的静态构造函数一样的规则但允许有不带参数的静态构造函数。 下面两种行为任一种发生之前会调用静态构造函数 调用显示声明的构造函数 引用结构的静态成员。 11.4.3 构造函数和析构函数小结 类型描述实例构造函数-无参数不能在程序中声明系统提供隐式的构造函数无法被删除或重定义实例构造函数-有参数可以在程序中声明静态构造函数可以在程序中声明析构函数不能在程序中声明不允许声明析构函数 11.5 属性和字段初始化语句 在 C# 10 之前不允许使用实例属性和字段初始化语句。结构体中的静态属性和静态字段在声明结构体时可以进行初始化。 11.6 结构是密封的 结构是隐式密封的不支持派生其他结构。 由于结构不支持继承因此下面的修饰符不能用于结构 protected protected internal abstract sealed virtual 结构本身派生自 System.ValueTypeSystem.ValueType 派生自 object可以使用 new 和 override 去覆盖或重定向 System.ValueType 中同名的成员。 11.7 装箱和拆箱 装箱值类型 → 引用类型 拆箱引用类型 → 值类型 11.8 结构作为返回值和参数 结构可以作为返回值和参数 将结构作为返回值或值参数时均会创建副本。使用 ref 或 out 参数时将会传递结构的引用可以修改其数据成员。 11.9 关于结构的更多内容 对结构进行分配的开销比类小可以提高性能。 注意装箱和拆箱的高昂代价。 预定义简单类型尽管被视为原始类型但在 .NET 中实现为结构。 int、short、long 等 类似分部类可以声明分部结构。 结构和类一样可以实现接口。
http://www.w-s-a.com/news/240581/

相关文章:

  • 婚纱摄影网站开题报告c2c模式是什么意思
  • 网站几种颜色wordpress水平菜单
  • php做网站的分站wordpress边下边看
  • 杭州建设实名制报备网站Wordpress外贸网站搭建公司
  • 山西云起时网站建设计算机网站开发实现总结
  • 一个网站做两个优化可以做吗永清网站建设
  • wordpress英文采集wordpress seo 链接
  • 进入建设银行的网站就打不了字工程建设标准化网站
  • 杭州网站推广大全网站建设演讲稿
  • 厦门网站的制作太仓专业网站建设
  • 天津公司网站建设公司哪家好在阿里巴巴国际网站上需要怎么做
  • 网站关键词seo推广公司哪家好无锡市无锡市住房和城乡建设局网站
  • 开远市新农村数字建设网站网站如何做QQ登录
  • 自己做个网站教程高端网站开发哪家强
  • 网站模板免费下载中文版大连网站建设哪家专业
  • 网站建设的基本代理公司注册公司坑人
  • 企业网站被黑后如何处理wordpress邮件发送类
  • 北京网站的网站建设公司建设工程竣工验收消防备案网站
  • 淄博市 网站建设报价wordpress里的发消息给我
  • 网站下拉菜单怎么做游戏网站模板免费下载
  • 阿里云上做网站套模板怎么做一个网站开发小组
  • 营销型网站源码下载青岛做网站建设的公司哪家好
  • 迁西网站定制怎么制作网址内容
  • 深圳装饰公司网站宁波网站建设哪里有
  • 建站网站破解版怎么看自己的网站是用什么做的
  • 做微商那个网站好织梦模板更新网站
  • 网站注册表单怎么做手机做网站需要多少天
  • 书店商城网站html模板下载企业网站建设方案书范文
  • 建设网站是普通办公吗快速排名seo软件
  • 大型外贸网站建设网站建设图片尺寸要求