MATLAB Answers

How can I call a function inside a class in the command window?

조회 수: 30(최근 30일)
Jay
Jay 4 Apr 2020
답변: SaiDileep Kola 9 Apr 2020
I'm new to matlab and I want to call a function contained inside a class in the comand window to run it. The method is not static. How can I do it? Also is there a simpler way to run the function? Also what is obj?
classdef my_class
properties
param
end
methods
function [x,y] = my_function(obj,a,b)
....
end
end
end

  댓글 수: 3

Tommy
Tommy 4 Apr 2020
You can create an instance of my_class,
A = my_class
and then call any public methods of my_class through that instance, such as
A.my_function(a,b)
I only passed two argument into my_function because the first argument (obj) is always the instance of the class, in this case A. It is similar to 'this' in Java or 'self' in Python. You don't have to call it obj - you could define your function as
function [x,y] = my_function(this,a,b)
....
end
if you wanted.
Jay
Jay 5 Apr 2020
What if the code is like that? The input argument "value" is a .txt file.
classdef my_class
properties
prop
end
methods
function [output,value] = my_function (obj,input,value)
prop1 = obj.prop(1);
prop2 = obj.prop(2);
prop3 = obj.prop(3);
in1 = input(1);
in2 = input(2);
in3 = input(3);
end
end
end
Ameer Hamza
Ameer Hamza 5 Apr 2020
Jay, is the value name of the .txt file (a char array)? You can still call any public method of a class using the syntax described by Tommy.

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

답변(1개)

SaiDileep Kola
SaiDileep Kola 9 Apr 2020
In addition to above going through this linkwould help you ramp up using classes in MATLAB.

  댓글 수: 0

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

Community Treasure Hunt

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

Start Hunting!

Translated by