Loading mat files does not support enumerations with function handles?

I basically have an enumeration class with one property being a handle. After saving an instance (TestEnum.a) to a mat file and loading it again I am facing the following warning:
Warning: The value of enumeration member 'a' differs from when the enumeration was saved. 'a' will be loaded with the new value.
Why is that the case? I have noticed that this does not happen in case the property is anything else?
classdef TestEnum
properties
hdl
end
enumeration
a (@(x) x)
end
methods
function obj = TestEnum(hdl)
obj.hdl = hdl;
end
end
end

回答 (1 件)

Steven Lord
Steven Lord 2021 年 8 月 29 日

1 投票

The question of whether two function handles are the same is a bit complicated.

1 件のコメント

Max Mund
Max Mund 2021 年 8 月 29 日
Okay I understand the issue but what options do I have to work around it?
Customizing the save and load process was my initial idea. Unfortunately I have noticed that for enumerations the loadobj(s) function is never called.

サインインしてコメントする。

カテゴリ

製品

リリース

R2021a

質問済み:

2021 年 8 月 28 日

コメント済み:

2021 年 8 月 29 日

Community Treasure Hunt

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

Start Hunting!

Translated by