我正在尝试使用一个成员变量来创建一个MATLAB类,该变量由于方法调用而被更新,但是当我尝试更改类中的属性时(显然,从我从MATLAB的内存管理中理解的)创建一个副本对象然后修改它,保持原始对象的属性不变.
classdef testprop
properties
numRequests=0;
end
methods
function Request(this, val)
disp(val);
this.numRequests=this.numRequests+1;
end
end
end
Run Code Online (Sandbox Code Playgroud)
.
>> a=testprop;
>> a.Request(9);
>> a.Request(5);
>> a.numRequests
ans = 0
Run Code Online (Sandbox Code Playgroud) 我有一些C++背景,并希望在Matlab中使用类.
句柄和值类有什么区别?
我知道如果我想用重载运算符(如"+"和"*")定义矩阵类,我会使用值类.但是,有时似乎只有当我选择一个句柄类时,事情才对我有用.