MATLAB Answers

Can classes be made unsaveable

3 views (last 30 days)
Is there a way to define a class such that the MATLAB save() function throws an error when it tries to save an instance of that class? E.g.
>> h = myclass();
>> save h
Error: Instances of myclass cannot be saved.

  0 Comments

Sign in to comment.

Accepted Answer

Oliver Woodford
Oliver Woodford on 18 Feb 2014
No. When a class object is saved, the saveobj method for that class gets called, if it exists. If this method throws an error, it is caught, and thrown as a warning instead. Therefore the best you can do is generate a warning. If you don't want the object to be saved, then you can have the saveobj method return an empty array, which is saved instead:
classdef myclass
...
methods
function a = saveobj(obj)
a = [];
Warning 'myclass objects are unsaveable.'
end
end
end

  0 Comments

Sign in to comment.

More Answers (0)

Products