matlab struct 结构体

matlab 的结构体第一次让 matlab 中的变量有了可以通过 .访问的成员变量,有了类的含义,甚至是面向对象的意味。

1. 结构体的赋值

结构体的赋值,这里不建议用下面这种形式进行统一赋值,

s = sturct('field1',values1,'field2',values2,…)

而是建议直接赋值,就是对每一个属性进行单独赋值,因为每一个属性的长度不同,所以,直接赋值,就省去了声明的过程,方便,快捷;
例如我们要声明下面的结构体:

example.name='Zhang';
example.addr='xi''an';
example.age= 23;

直接输入以上语句便可。

2. 结构体的属性增加删除

如果我们要删除结构体的某一项属性,那么可以通过函数 rmfield,来实现,如果要增加一个属性,那么可以直接进行赋值便可。

>> example = rmfield(example, 'addr')
example = 

    name: 'Zhang'
     age: 23

>> example.address = 'xi''an'
example = 
       name: 'Zhang'
        age: 23
    address: 'xi'an'

3. 结构体字段名称的获取以及判断

假如我们想要知道这个结构体具体有多少字段(属性),我们可以通过函数 fieldnames 来获取字段名称,同时我们也可以通过函数 isfield 来判断是否存在某一字段。
具体的实例如下:

>> fieldnames(example)
ans = 
    'name'
    'age'
    'address'
            fieldnames 返回的是 cell

>> isfield(example, 'addr')
ans =
     0

>> isfield(example, 'address')
ans =

     1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五道口纳什

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值