Why is the size of matrix b different from the size of matrix a?
Please, any suggestions? How to fix it
________________________
a = testSizeFunction
a =
1×1 testSizeFunction array with properties: s: [2×3 double]
[M,N] = size(a)
M = 2
N = 3
b = rand(size(a))
b = 2×2
0.5167 0.2590 0.8186 0.9810

 Akzeptierte Antwort

Matt J
Matt J am 4 Mär. 2023
Bearbeitet: Matt J am 4 Mär. 2023

0 Stimmen

You have not overloaded the size method appropriately for the case where nargout=1:
a = testSizeFunction;
siz=size(a)
siz = 2
Try this instead:
function varargout = size(obj,varargin)
[varargout{1:nargout}] = builtin('size', obj.s, varargin{:}); % call builtin size function
end

6 Kommentare

Mohamed Gharbi
Mohamed Gharbi am 4 Mär. 2023
Thank you very much
Matt J
Matt J am 4 Mär. 2023
You're welcome, but please Accept-click the answer to indicate that it worked.
Mohamed Gharbi
Mohamed Gharbi am 5 Mär. 2023
Thank you very much, it works.
Matt J
Matt J am 5 Mär. 2023
I'm glad, but please Accept-click the answer.
Mohamed Gharbi
Mohamed Gharbi am 5 Mär. 2023
Okay. It works well.
Voss
Voss am 5 Mär. 2023
@Mohamed Gharbi: Please click the "Accept This Answer" button on Matt J's answer.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2022b

Tags

Gefragt:

am 4 Mär. 2023

Kommentiert:

am 5 Mär. 2023

Community Treasure Hunt

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

Start Hunting!

Translated by