大佬给看一下,结构体赋值几种方式问题

      首先我们可以回顾数组的赋值问題在数组中,比如我们定义一个数组arry里面包含五个×××数:

声明这个数组后,会为它分配一定内存而且我们知道arry代表的是数组的首哋址。但是如果我们用下面的方法肯定是不行的如下:

有时候我们很容以犯错的是以为给数组arry赋值,但是我们刚刚说过声明数组arry之后,arry就是数组的首地址arry就成了一个常量,很显然常量是不能被赋值的。所以arry={1,2,3,4,5}很显然是错误的

        对于结构体,可能很多人也会有这个疑问结构体到底可不可以直接赋值呢?今天自己学习了一下结构体于是就自己写代码练习,结果遇到问题了!首先我们看一个最简单的结構体程序:

visio_2016下载安装亲测可用,不需要破解而且无秘钥。简单方便实用

结构体初始化的几种方式

无构造方法的结构体初始化

// 定义时赋值,通过大括号
// 没有构造方法的结构体是不能使用小括号的方式进行赋值的

有构造方法的结构体初始化

有构造方法的结构体不能使用乱序赋值也就是不能针对指定的属性名进行赋值。

定义时赋值(跟无构造方法的结构体不同)

与无构造方法的结構体相比有构造方法的结构体在定义时赋值的方式可以有更多种,不仅可以通过 (attr1, attr2) 也可以通过 {attr1, attr2} 的方式进行赋值

// 创建老师结构体对象,这個结构体是有构造方法的
先定义再赋值(需要有无参构造方法)

我要回帖

更多关于 结构体赋值几种方式 的文章

 

随机推荐