Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MatLab:多项式误差的Classdef_Matlab - Fatal编程技术网

MatLab:多项式误差的Classdef

MatLab:多项式误差的Classdef,matlab,Matlab,我已经为多项式编写了下面的类,但是我一直得到错误 No public field polynomial exists for class Poly. Error in Poly (line 13) obj.polynomial=struct('exponent',{p.exponent},'coeff',{p.coeff}); 这是我的班级 classdef Poly properties polynomial end

我已经为多项式编写了下面的类,但是我一直得到错误

No public field polynomial exists for class Poly.

Error in Poly (line 13)
                obj.polynomial=struct('exponent',{p.exponent},'coeff',{p.coeff});
这是我的班级

classdef Poly

    properties
        polynomial

    end

    methods
        function obj=Poly(p)
            if isa(p,'Poly')
                obj=p;
            else
                obj.polynomial=struct('exponent',{p.exponent},'coeff',{p.coeff});
            end
        end
        function answer=plus(obj1,obj2)
            obj1=Poly(obj1);
            obj2=Poly(obj2);
            answer=Poly(addPoly(obj1.polynomial,obj2.polynomial));
        end
        function answer=mtimes(obj1,obj2)
            obj1=Poly(obj1);
            obj2=Poly(obj2);
            answer=Poly(multPoly(obj1.polynomial,obj2.polynomial));
        end
        function answer=rem(obj1,obj2)
            obj1=Poly(obj1);
            obj2=Poly(obj2);
            answer=Poly(dividePolyrem(obj1.polynomial,obj2.polynomial));
       end





    end


end
我不确定为什么一直出现此错误,我尝试在
属性之后添加
(SetAccess=Public)
,但这似乎不起作用。有什么建议吗?

您的源代码很好(除了classdef和方法缺少的
end
),可能存在过时版本的类,这会阻止matlab更新类定义。清除包含
Poly
实例的所有变量