MATLAB Answers

Sadid
0

local function of a class :: Revoke/Call problem

Asked by Sadid
on 22 Dec 2012
Hi, Happy Christmas!
I have a problem in concept of local function of a class. Considering this conditions:
I've a class called STWS which I've put it in the @STWS folder. along the class defenition I've put f.m file (very simple ordinary matlabl function). my current directory is the parrent directory of @STWS and I'm running a main.m script to use the class (pretty standard, isn't?). I want to use f.m inside my constructore method but I encounter this problem:
A) when I write the f in this way obj = f(obj,varargin) and use it insdie the constructor.... No problem
B) when I write the f in this way y = f(obj,varargin) and use it in this way: y = f(obj,x) It works but pretty wiered to me! I'm newbie and I cant recognize the mechanism
C) [my first desired way] I write the f as y=f(x,varargin). and I wanted to use it in the constructor in ordinary way (without passing the thisObject), I get the undefined function error.
methods function obj = STWS(x,varargin) ..... obj.w = f(x,varargin) end
other methods
end
why the C doesn't work (I even examine putting f inside methods block of main class but that was the same. Does any local function should get and pass the thisObject?!!!!

  0 Comments

Sign in to comment.

1 Answer

Answer by Sadid
on 22 Dec 2012
 Accepted Answer

Since the method: f is not static, so the C is impossible....

  0 Comments

Sign in to comment.