MATLAB - 为什么抱怨classdef对象的@ -folders?

时间:2012-10-03 21:51:27

标签: oop matlab

我一直在编写OOP MATLAB代码。但是,我现在第一次在Windows机器上运行MATLAB代码。

我有以下代码:

classdef myClass < handle
    properties
        i
    end

    methods
        function obj = myClass()
            obj.i = 0;
        end

        function say(obj)
            obj.i = obj.i + 1;
            fprintf('This is time #%i you invoked me!\n', obj.i);
        end
    end
end

似乎非常无害。我尝试实例化一个对象,我得到了这个:

>> m = myClass;
Error using myClass
Error: File: myClass.m Line: 1 Column: 10
A class definition must be an "@" directory.

我从未在编写OOP MATLAB代码时使用@ -folder。我的理解是,如果类方法与classdef文件分开编写(我的不是),或者它是使用旧式的MATLAB类语法(我的不是),这是必需的。

我想我知道这笔交易是什么,我想知道是否有解决方法:我的工作目录是

形式
C:\Users\DangKhoa@MyCompany.com\Documents\MATLAB

@抛出MATLAB并让计算机认为我在@ -folder中?如果是,是否有解决方法(除了在我的计算机上创建一个新用户,显然 - 这可能是不可行的)?如果没有,发生了什么?

1 个答案:

答案 0 :(得分:4)

看起来是,文件夹中间的@导致错误。我向The MathWorks提交了一份错误报告。