Does Matlab support destructor function in class?

For a normal class (not a handle class), can we set a destructor function so that when deleting a class instance, it does some house keeping work itself?
For example, I have a class containing a timer. When I delete the class, the timer handle is deleted, but the timer is still there and may be running. I have to remember to delete the timer manually before deleting the class.
Is Matlab considering adding this in newer versions? Thanks!

 采纳的回答

You will have to write your own delete() method for the class. Then when you delete the object, this method is called and it stops/deletes the timer.

3 个评论

Would delete() be called automatically when an instance is cleaned up automatically such as it going out of scope?
I don't think so. Value classes do not have a delete method.
I should look again at how onCleanup() works.

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Entering Commands 的更多信息

产品

标签

Community Treasure Hunt

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

Start Hunting!

Translated by