Matlab访问struct中数据

struct 结构体由两部分组成:
{类型名.成员名;类型名.成员名;……};
先声明结构体类型,再定义结构体变量名。
这两部分类似矩阵的行和列,

结构体类型——行;结构体变量名——列

创建一个 1×3 的结构体 s,其中包含字段 f:

s(1).f = 1;
s(2).f = ‘two’;
s(3).f = 3 * ones(3);

调用结构体中的变量:

s(1) %调用结构体第一行
ans = f: 1
s(3)
ans = f: [3x3 double]
s(2)
ans = f: ‘two’

s(2).f(2) %调用结构体第二行第二列
ans =w
s(3).f(2) %调用结构体第三行第二列
ans = 3

1.1创建方式

number.name = ‘kebe’;
number.age = ‘1978’;
number

number =

包含以下字段的 struct:

name: 'kebe'
 age: '1978'

1.2创建多个,加下标

number(1).name = ‘kobe’;
number(1).age = ‘1978’;
number(2).name = ‘bryant’; %2相当于增加一行
number(2).age = ‘2016’;
number

number =

包含以下字段的 2×2 struct 数组:

              name  age
   number (1)kobe 1978
   number (2)bryant 2016

number(1)
ans =
name: ‘kobe’
age: ‘1978’

number(2)
ans =
name: ‘bryant’
age: ‘2016’

结构数组排序

% 把该解决方案的邻域中所有解决方案按cost从小到大排序
function neighbourSet = sortNeighbours(neighbourSet)
% 按cost排序
[~, index] = sort([neighbourSet.cost]);%加中括号,
% 按排序后的index对邻域进行排序
neighbourSet = neighbourSet(index(?);
end


版权声明:本文为darkstardream原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。