ibcadmin 发表于 2019-8-14 15:05:21

c# 结构与类

<ul>
<li>
<h4>结构是一种可以包含数据成员和方法成员的值类型数据结构。为结构分配数据时不需要从托管堆中分配内存,结构类型的变量直接包含了该结构的数据。结构中可以包含构造函数,常量,字段方法,属性,运算符,事件和嵌套类型等,但如果要同事包罗上述几种成员,则应该考虑使用类。</h4>
</li>
</ul>
<p style="margin-left: 30px;">使用结构对于小的数据结构特别有用,能够节省大量的分配内存,如复数和坐标系中的点。</p>
<p style="margin-left: 30px;">结构具有以下特点:</p>
<p style="margin-left: 30px;">结构是值类型。</p>
<p style="margin-left: 30px;">向方法传递结构时,是通过传值方式传递的,而不是作为应用传递的。</p>
<p style="margin-left: 30px;">结构的实例化可以不使用new运算符。</p>
<p style="margin-left: 30px;">机构可以声明构造函数,但它们必须带参数。</p>
<p style="margin-left: 30px;">一个结构不能从另一个结构或类继承。所有结构都直接继承自 system.valueType。</p>
<p style="margin-left: 30px;">结构可以实现接口。</p>
<p style="margin-left: 30px;">在结构中初始化实例字段是错误 的。</p>
<ul>
<li>
<h4>结构和类的区别</h4>
</li>
</ul>
<p style="margin-left: 30px;">结构是值类型,它在栈上分配数据,并且结构的赋值将分配产生一个新的对象;而类是引用类型,它在堆上分配数据,对类的对象进行赋值时只是复制了引用,它们都指向同一个实际对象分配的内存。</p><br>来源:<a href="https://www.cnblogs.com/houxt/p/11339917.html" target="_blank">https://www.cnblogs.com/houxt/p/11339917.html</a>

ddff123 发表于 2019-9-3 21:18:19

顶顶顶顶顶顶顶顶顶顶顶顶顶顶
页: [1]
查看完整版本: c# 结构与类