提出这样的问题并不是什么新鲜事。因为我花了几个小时阅读文档和可用的示例。但是尴尬的是,MATLAB似乎不接受我的代码。所以,我感到很困惑
classdef testclass
%UNTITLED Summary of this class goes here
% Detailed explanation goes here
properties
a =3;
b =4;
end
methods
function obj = testclass(a_inp, b_inp) %
obj.a = a_inp;
obj.b = b_inp;
end
output = plus(obj)
output = minus(obj)
end
end
和功能
function output = minus(obj)
output = obj.a-obj.b;
end
我认为这是一个典型的测试。但是当我初始化类时,会出现这个错误
Error using testclass
Too many input arguments.
Error in class_call (line 2)
myclass = testclass(3,4 );
我通过myclass = testclass(3,4)创建类;
我的代码可能有什么问题?请帮助!我被卡住了!
答案 0 :(得分:1)
您拥有的代码是正确的。正如@ horchler所说,你只需要将所有文件包括类定义放在@testclass目录中。如果没有此目录,则无法为类创建单独的文件。
您尝试实例化该类的代码也应该在@testclass目录之外正常工作。只有在未将文件放在@testclass目录中时,才会在调用方法加或减时收到错误。