Convert a Nested Struct to a Class

조회 수: 6 (최근 30일)
Mingliang Tan
Mingliang Tan 2019년 1월 13일
댓글: Adam 2019년 1월 16일
Dear all,
I created a 3-layer nested structure in Matlab. Currently I name it as S. However, I will also need to have many variales with the same structure. I need S1, S2.....S100.
I realize that using class will be more helpful. If I have a class S_Class, my variables S1, S2.....S100 can be defined as:
  • S1 = S_Class;
  • S2 = S_Class;
Therefore, by using the class, I don't have to create the same structure for 100 times. Is my understaning correct?
If it is the case, how could I convert current 3-layer nested struct to a class?
Take the following code as an example
classdef S_Class
properties
V1
V2
V3
end
end
I would like V2 to be a stucture with several fields or even another structure inside. Is this possible?
Best regards,
Mingliang
  댓글 수: 3
Mingliang Tan
Mingliang Tan 2019년 1월 16일
Thanks for your help.
I do realize that defining so many variables is not necessary. I will read the tutorial carefully
Adam
Adam 2019년 1월 16일
Class properties can be anything you want, including objects of other classes or arrays of objects of other classes. They can be structs if you really want, though if you are converting the top level to classes I would strongly recommend converting the rest to appropriate classes too.
Objects can be stored in an array just like doubles so an array of 100 objects makes a lot more sense than 100 individual variables, each of 1 object.

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

Help CenterFile Exchange에서 Structures에 대해 자세히 알아보기

제품


릴리스

R2017a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by