C# 里面 结构可不可以 有属性
2013-07-20
展开全部
当然可以,但是结构在初始化构造函数的时候不允许直接对属性进行赋值的。】解决方案——直接对变量赋值: public struct StructTest
{
private int x; public int X
{
get { return x; }
set { x = value; }
} public StructTest(int _x)
{
x = _x;
}
}
{
private int x; public int X
{
get { return x; }
set { x = value; }
} public StructTest(int _x)
{
x = _x;
}
}
2013-07-20
展开全部
可以
类和结构是 .NET Framework 中的常规类型系统的两种基本构造。 两者在本质上都属于数据结构,封装着一组整体作为一个逻辑单位的数据和行为。 数据和行为是该类或结构的“成员”,它们包含各自的方法、属性和事件等(本主题后面列出了这些内容)。 类或结构的声明类似于蓝图,用于在运行时创建实例或对象。 如果定义一个名为 Person 的类或结构,则 Person 为类型名称。 如果声明并初始化 Person 类型的变量 p,则 p 称为 Person 的对象或实例。 可以创建同一 Person 类型的多个实例,每个实例在其属性和字段中具有不同的值。 类是一种“引用类型”。 创建类的对象时,对象赋值到的变量只保存对该内存的引用。 将对象引用赋给新变量时,新变量引用的是原始对象。 通过一个变量做出的更改将反映在另一个变量中,因为两者引用同一数据。 结构是一种值类型。 创建结构时,结构赋值到的变量保存该结构的实际数据。 将结构赋给新变量时,将复制该结构。 因此,新变量和原始变量包含同一数据的两个不同的副本。 对一个副本的更改不影响另一个副本。 类通常用于对较为复杂的行为建模,或对要在创建类对象后进行修改的数据建模。 结构最适合一些小型数据结构,这些数据结构包含的数据以创建结构后不修改的数据为主。
类和结构是 .NET Framework 中的常规类型系统的两种基本构造。 两者在本质上都属于数据结构,封装着一组整体作为一个逻辑单位的数据和行为。 数据和行为是该类或结构的“成员”,它们包含各自的方法、属性和事件等(本主题后面列出了这些内容)。 类或结构的声明类似于蓝图,用于在运行时创建实例或对象。 如果定义一个名为 Person 的类或结构,则 Person 为类型名称。 如果声明并初始化 Person 类型的变量 p,则 p 称为 Person 的对象或实例。 可以创建同一 Person 类型的多个实例,每个实例在其属性和字段中具有不同的值。 类是一种“引用类型”。 创建类的对象时,对象赋值到的变量只保存对该内存的引用。 将对象引用赋给新变量时,新变量引用的是原始对象。 通过一个变量做出的更改将反映在另一个变量中,因为两者引用同一数据。 结构是一种值类型。 创建结构时,结构赋值到的变量保存该结构的实际数据。 将结构赋给新变量时,将复制该结构。 因此,新变量和原始变量包含同一数据的两个不同的副本。 对一个副本的更改不影响另一个副本。 类通常用于对较为复杂的行为建模,或对要在创建类对象后进行修改的数据建模。 结构最适合一些小型数据结构,这些数据结构包含的数据以创建结构后不修改的数据为主。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-20
展开全部
如果必须用结构时,然后对GET SET没有要求时,建立直接用字段.只不过字段那个蓝色的小图标很难看.有的人就会为了这个问题,弄成属性.
如果是那样不如直接用CLASS.只不过有的地方必须使用STRUCT
如果是那样不如直接用CLASS.只不过有的地方必须使用STRUCT
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询