MATLAB 结构型变量
生活随笔
收集整理的這篇文章主要介紹了
MATLAB 结构型变量
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
結(jié)構(gòu)型變量的定義
結(jié)構(gòu)型變量的相關(guān)函數(shù)
| struct | 創(chuàng)建或轉(zhuǎn)換結(jié)構(gòu)型變量 |
| fieldnames | 得到結(jié)構(gòu)型變量的屬性名 |
| getfield | 得到結(jié)構(gòu)型變量的屬性值 |
| setfield | 設(shè)定結(jié)構(gòu)型變量的屬性值 |
| rmfield | 刪除結(jié)構(gòu)型變量中的屬性 |
| isfield | 判斷是否為結(jié)構(gòu)型變量的屬性 |
| isstruct | 判斷變量是否為結(jié)構(gòu)型變量 |
結(jié)構(gòu)型變量的定義有兩種方法
- 直接賦值定義
- 函數(shù)struct定義
注意:直接賦值時,需要指出結(jié)構(gòu)中的屬性名,并且用指針操作符“.”來連接結(jié)構(gòu)型變量名與屬性名。對屬性直接賦值,會自動生成結(jié)構(gòu)型變量,并使結(jié)構(gòu)型變量包含所定義的屬性。
第一種直接賦值定義
>> Test.a1 = 'avcdef'; >> Test.a2 = 6; >> Test.ae = [1, 2, 3, 4, 5]; >> Test運(yùn)行結(jié)果:
上面代碼表示定義了結(jié)構(gòu)型變量,結(jié)構(gòu)型變量有3個屬性:屬性a1,屬性a2,屬性a3。
第二種函數(shù)struct定義
使用函數(shù)struct來定義結(jié)構(gòu)型變量,格式如下:
結(jié)構(gòu)型變量名 = struct(元素名1,元素值1,元素名2,元素值2,......) >> A = [1, 2, 3, 4, 5]; >> B = struct('a1', A, 'b2', 2, 'C3', 'abcdef') >> B運(yùn)行結(jié)果:
fieldnames函數(shù)的使用
A = [1, 2, 3, 4, 5]; B = struct('a1', A, 'b2', 2, 'C3', 'abcdef')fieldnames(B) % 調(diào)用處結(jié)構(gòu)型變量B的所有元素名運(yùn)行結(jié)果:
getfield函數(shù)的使用
A = [1, 2, 3, 4, 5]; B = struct('a1', A, 'b2', 2, 'C3', 'abcdef')C = getfield(B, 'a1') % getfield函數(shù)把 B.a1 的值賦給 C運(yùn)行結(jié)果:
setfield函數(shù)的使用
setfield函數(shù)對結(jié)構(gòu)型變量的屬性值更新后的結(jié)果賦給新的結(jié)構(gòu)型變量或在原有的結(jié)構(gòu)型變量基礎(chǔ)上添加新的屬性。
注意:必須將函數(shù)結(jié)果賦予該結(jié)構(gòu)型變量,否則將不會實(shí)現(xiàn)更改屬性值的作用。
運(yùn)行結(jié)果:
rmfield函數(shù)的使用
A = [1, 2, 3, 4, 5]; B = struct('a1', A, 'b2', 2, 'C3', 'abcdef')C = rmfield(B, 'a1') % 刪除結(jié)構(gòu)型變量的屬性 a1 賦值給結(jié)構(gòu)型變量 C,需要將結(jié)果賦予原變量 或 新的變量,才能更新原變量或新的變量擁有更新后的結(jié)果運(yùn)行結(jié)果:
isfield函數(shù)的使用
A = [1, 2, 3, 4, 5]; B = struct('a1', A, 'b2', 2, 'C3', 'abcdef')C = isfield(B, 'a1') % 判斷是否是結(jié)構(gòu)型變量的屬性 C = isfield(B, 'aa') % 判斷是否是結(jié)構(gòu)型變量的屬性運(yùn)行結(jié)果:
isstruct函數(shù)的使用
A = [1, 2, 3, 4, 5]; B = struct('a1', A, 'b2', 2, 'C3', 'abcdef')C = isstruct(A) % 判斷是否為結(jié)構(gòu)型變量 C = isstruct(B) % 判斷是否為結(jié)構(gòu)型變量運(yùn)行結(jié)果:
總結(jié)
以上是生活随笔為你收集整理的MATLAB 结构型变量的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++ 使用dynamic_cast执行
- 下一篇: ISIS 7 Professional仿