MATLAB-005 无法实例化为对象?全网找不到解决方案?

问题

Matlab常见的mat文件无法使用load函数读取的错误,提示如下:

警告: 最初保存为 classA 的变量 ‘variableA’ 无法实例化为对象,将以 uint32 形式读取。

Variable variableA originally saved as a classA cannot be instantiated as an object and will be read in as a uint32

原因

在使用下面的语句时:

save file.mat variableA

变量variableA是一个自定义的class, 例如:

classdef classA 
    properties 
        a
        b
        c
    end
end

由于classA.m 没有保存在相同的文件夹,或者没有引用,导致MATLAB无法解析,进而出现错误提示。

解决方案

重新写一个class, 把class文件放入相同文件夹,或者使用addpath 进行引用。

addpath(folder_path)

如果出现:
类定义必须位于 “@” 目录中。

那么在folder_path的文件夹下面新建 @classA 文件夹, 把classA.mat 放入@classA 文件夹。


版权声明:本文为jell14原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。