C# 结构实例化
看到书上还有很多人都说结构的实例化可以不使用new运算符,但是比如myStructa=newmyStruct(****);这样的代码是正确的,这是为什么?这样不叫实例化吗...
看到书上还有很多人都说结构的实例化可以不使用 new 运算符,但是比如
myStruct a = new myStruct(****);
这样的代码是正确的,这是为什么?这样不叫实例化吗?那类的实例化呢?结构的实例化该怎么写?求指点 展开
myStruct a = new myStruct(****);
这样的代码是正确的,这是为什么?这样不叫实例化吗?那类的实例化呢?结构的实例化该怎么写?求指点 展开
5个回答
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
展开全部
我也不是很清楚,只说一些我之前的印象
类是引用类型,如果只定义不实例化,是没法用的。
而结构是值类型,在定义的时候系统就已经分配了内存。
你这个写法我用过,没问题。不过不用NEW这一下,这个结构应该也可以使用。
而类就必须实例化,否则这个类=null,无法使用。
类是引用类型,如果只定义不实例化,是没法用的。
而结构是值类型,在定义的时候系统就已经分配了内存。
你这个写法我用过,没问题。不过不用NEW这一下,这个结构应该也可以使用。
而类就必须实例化,否则这个类=null,无法使用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你确定myStruct是定义为结构体,而不是类?
其实用不用new也可以的,不过有一些区别罢了:
如果使用 new 运算符创建结构对象,则会创建该结构对象,并调用适当的构造函数。如果不使用 new,则在初始化所有字段之前,字段都保持未赋值状态且对象不可用。
其实用不用new也可以的,不过有一些区别罢了:
如果使用 new 运算符创建结构对象,则会创建该结构对象,并调用适当的构造函数。如果不使用 new,则在初始化所有字段之前,字段都保持未赋值状态且对象不可用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
结构如果想要使用。是必须实例化的(也就是,结构体内的每个变量都有默认值)。否则编译都无法通过。
结构不实例化,绝对是错误的啊。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为结构是值类型,所以new运算符与类和其他引用类型的工作方式不一样。new运算符并不分配堆中的内存,而是调用相关的构造函数,根据传送给它的参数,初始化所有字段。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询