Matlab R2018b cannot check whether builtin function 'addvars.m' exist

1 visualización (últimos 30 días)
Yunhui Zhou
Yunhui Zhou el 25 de Dic. de 2018
Respondida: Steven Lord el 25 de Dic. de 2018
Hi, I found that Matlab R2018b cannot check whether the builtin function 'addvars.m' exist. On my machine:
>> exist('addvars.m')
ans =
0
>> exist('addvars')
ans =
0
>> exist('plot')
ans =
5
However, if I type:
edit addvars
It can open this builtin function (C:\Program Files\MATLAB\R2018b\toolbox\matlab\datatypes\@tabular\addvars.m). I need to check whether it exists to make my code backward compatitable. What is the reason for this issue?
Edit: A screenshot
addvarsbug.PNG

Respuestas (3)

madhan ravi
madhan ravi el 25 de Dic. de 2018
P.S - I received the same answer as you(2018b).

Walter Roberson
Walter Roberson el 25 de Dic. de 2018
The inside of @ directories are not considered to be on the search path. When exist() is passed a file name, it only examines the search path. When exist() is passed the name of a function, it only examines the search path.
The addvars that exist() is finding is considered a method of class tabular

Steven Lord
Steven Lord el 25 de Dic. de 2018
Instead of checking the existence of a particular file, I recommend using the verLessThan function to determine if the MATLAB session you're using is sufficiently new to have a particular piece of functionality. This avoids false positives where your user may create a script, function, or class file named addvars in a release earlier than its introduction as a method for table and timetable arrays in release R2018a.

Categorías

Más información sobre Environment and Settings en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by